我的应用程序中有很多活动,每个活动都有相同的按钮, 我想在公共类中设置按钮的监听器,然后每个活动都可以使用它。我可以?怎么办?
例如:
public class MainActivity extends Activity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MessageSend ms=new MessageSend(getApplicationContext(),???);
}
}
public class MessageSend implements OnClickListener{
public MessageSend(Context context,???){
this.context=context;
View mView=LayoutInflater.from(context).inflate(R.layout.layout_message_send, null);
Button button= (Button)mView.findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
//Do someting
}
});
}
} activity_main布局包括layout_message_send。 我可以用这种方式来使用按钮的监听器吗?如果可以的话,???帕拉姆是?如果没有,你能给我一个样品吗?
答案 0 :(得分:1)
首先请参阅此链接中的此问题/答案..
使用其中任何一种或尝试以下所述的其他方式。
如果您想对来自不同活动的多个按钮使用相同的方法,并且您不想重复代码。
我更喜欢为所有活动制作Common Class。
示例强>
在class
中创建public static
和class
方法,并将该方法用于来自不同Button
的不同Activities
。
public class CommonUtils {
// Common Functions
public static void yourMethodName(Context contx,Other Params) {
//Do ur code
}
}
如果要使用该功能,请编写此代码。你可以在Button的onClickListener()
;
CommonUtils.yourMethodName(Your params);
它可以帮助您减少编码,如果您想要更改任何内容,则只需更改一次。