1.匿名内部类和普通内部类
以按钮编程为例
匿名内部类
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //退出 Button btn1 = (Button) findViewById(R.id.btn_exit); btn1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } }); //测试 Button btn2 = (Button) findViewById(R.id.btn_test); btn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { TextView tv = (TextView) findViewById(R.id.msg); tv.setText("Hello"); } }); } }
普通内部类
public class MainActivity extends AppCompatActivity { class BtnClickListener implements View.OnClickListener{ @Override public void onClick(View v) { switch (v.getId()){ case R.id.btn_test: TextView tv = (TextView) findViewById(R.id.msg); tv.setText("Hello"); break; case R.id.btn_exit: finish(); break; } } } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn1 = (Button) findViewById(R.id.btn_test); Button btn2 = (Button) findViewById(R.id.btn_exit); BtnClickListener listener = new BtnClickListener(); btn1.setOnClickListener(listener); btn2.setOnClickListener(listener); } }
2.提示框、对话框
- Toast消息提示框
- Snackbar对话框
- AlertDialog对话框
1.Toast消息提示框
写法Toast.makeText(context, text, duration ),show()
解释:
1.context代表上下文参数,比如Activity,this
2.text填入你要显示的信息
3.duration表示显示时长
实例:
Toast.makeText(MainActivity.this,"测试成功",Toast.LENGTH_LONG).show();
2.