buttonImage.setOnClickListener(new View.OnClickListener() { //重写onClick方法 @Override public void onClick(View arg0) { Intent i = new Intent(Intent.ACTION_PICK); //调用本地图库 i.setType("image/*"); startActivityForResult(i, SELECT_IMAGE); //传入Intent启动activity } });
时间: 2023-04-10 17:04:43 浏览: 108
这是一个 Android 开发中的代码片段,用于设置按钮的点击事件,当按钮被点击时,会打开本地图库,用户可以选择一张图片,然后将选择的图片返回给调用该方法的 Activity。其中 SELECT_IMAGE 是一个常量,用于标识该操作的返回结果。
相关问题
public class MainActivity extends AppCompatActivity { private TextView resultText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); resultText = findViewById(R.id.result_text); findViewById(R.id.btn_0).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { appendText("0"); } }); findViewById(R.id.btn_1).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { appendText("1"); } }); // 添加其他数字按钮的 onClickListener findViewById(R.id.btn_add).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { appendText("+"); } }); findViewById(R.id.btn_subtract).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { appendText("-"); } }); // 添加其他运算符按钮的 onClickListener findViewById(R.id.btn_clear).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { clearText(); } }); findViewById(R.id.btn_equals).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { calculate(); } }); } private void appendText(String text) { resultText.append(text); } private void clearText() { resultText.setText(""); } private void calculate() { try { String expression = resultText.getText().toString(); Expression e = new ExpressionBuilder(expression).build(); double result = e.evaluate(); resultText.setText(Double.toString(result)); } catch (IllegalArgumentException ex) { resultText.setText("Error"); } }}
这是一个简单的计算器应用程序的主要代码。它使用了一个第三方库,即“expr-eval”,来解析算术表达式并计算结果。在 onCreate() 方法中,它设置了数字和运算符按钮的 onClickListener,并分别调用了 appendText()、clearText() 和 calculate() 方法。在 appendText() 方法中,它向结果文本框中添加新的字符。在 clearText() 方法中,它简单地将结果文本框的内容设置为空。在 calculate() 方法中,它首先获取结果文本框中的表达式,然后使用 ExpressionBuilder 类构建一个 Expression 对象,该对象表示表达式的树形结构。最后,它调用 evaluate() 方法来计算表达式的结果,并将结果设置为结果文本框的内容。如果表达式无效,则 catch 语句将捕获 IllegalArgumentException 异常,并将结果文本框的内容设置为“Error”。
private void initBackButton() { ((Button) findViewById(R.id.btn_back)).setOnClickListener(new View.OnClickListener() { // from class: com.desaysv.dsvsettings.TestActivity.1 @Override // android.view.View.OnClickListener public void onClick(View view) { TestActivity.this.onBackPressed(); } }); }
这段代码是一个初始化返回按钮的方法,主要实现了给返回按钮添加点击事件,当点击返回按钮时,则会调用当前 Activity 的 onBackPressed() 方法,从而实现返回上一个页面的功能。
具体来说,这个方法首先通过 findViewById() 方法找到布局中 id 为 R.id.btn_back 的 Button 控件,然后给这个 Button 控件设置了一个 OnClickListener,当点击这个 Button 时,就会触发 onClick() 方法,而 onClick() 方法中调用了当前 Activity 的 onBackPressed() 方法,从而实现了返回上一个页面的功能。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)