大家好,做项目 遇到一个问题:我的应用里有很多个activity,每个activity中右下角是一个功能按钮,这个功能按钮的功能在所有的activity中是一样。请问大家怎么不用在每个activity里都给这个功能按钮设置监听事件而又可以实现它的功能呢?
我尝试过继承什么的,都不可以,不知道有没有什么 方法可以实现呀?谢谢大家了
------解决方案--------------------
声明外部类 :通过重写构造函数,传入相应的activity,和相应的控件,这里有个demo 你可以看看,不够很少这样做的,内部类可以提高程序的内聚性,
- Java code
public class SendSmsListener implements OnLongClickListener{ private Activity act; private EditText address; private EditText content; public SendSmsListener(Activity act, EditText address, EditText content) { this.act = act; this.address = address; this.content = content; } /* * (non-Javadoc) * * @see android.view.View.OnLongClickListener#onLongClick(android.view.View) */ @Override public boolean onLongClick(View source) { String addressStr = address.getText().toString(); String contentStr = content.getText().toString(); SmsManager smsManager = SmsManager.getDefault(); PendingIntent sentIntent = PendingIntent.getBroadcast(act, 0, new Intent(), 0); smsManager.sendTextMessage(addressStr, null, contentStr , sentIntent, null); Toast.makeText(act, "短信发送完成", Toast.LENGTH_LONG).show(); return false; }}