我已经尝试了许多代码来调用方法,但是当我使用参数调用方法时,会向我发送错误。我如何用BroadcastReceiver
或其他class
的参数调用此方法!?
更新
我无法使用myMethod(View view);
所有这些都能完美地工作。现在,我需要的是调用带有活动参数的方法Broadcast Receiver
,在其中创建了自定义Toast
。
我已经在stack-overflow.com和某些网站/ youtube上阅读了很多答案,但可能无法解决我的问题,也许我不太清楚。
public class MyActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public void myMethod1(View view){
//some code custom toast
finish();
}
public void myMethod2(View view){
//some code custom toast
finish();
}
public void myMethod3(View view){
//some code custom toast
finish();
}
}
我在没有显示的情况下构建了此activity
和我以前的代码可以正常工作,但是我必须在我以前的代码的每个自定义toast
上创建类:
BroadcastReceiver
public class myBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_POWER_CONNECTED)) {
Intent i = new Intent(context, MyActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
}
MyActivity
public class MyActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.lowbattery_toast, (ViewGroup) findViewById(R.id.low_battery));
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.BOTTOM, 0, 10);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
finish();
}
}
我想通过BroadcastReceiver的调用方法在单个活动上创建我的所有自定义toast
。
有什么办法解决我的问题吗?
答案 0 :(得分:0)
您可以将标志值放入意图,然后在您的活动类中创建一个方法,该方法可以通过标志值显示不同的Toast UI。