하나의 활동에 3 개의 버튼이 있습니다. 각 버튼을 클릭하면 activity_B가 시작되지만 내 질문은 어떤 버튼이 activity_B로 시작되는지 알 수있는 방법입니다.이전 활동에서 클릭 한 버튼을 알고 있음
갱신 :
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(LastDaysActivity.this);
prefs.edit().putString("Date1", btn1.getText().toString()).apply();
Intent i = new Intent(LastDaysActivity.this, TabHostActivityLastDays.class);
i.putExtra("button", "1");
startActivity(i);
}
});
활동 B :
이 Toast.makeText(BatteryActivityLastDays.this, String.valueOf(my.getLastDaysValues(result1, 10)), Toast.LENGTH_SHORT).show();
String intent = this.getIntent().getStringExtra("button");
if (intent != null)
{
Toast.makeText(BatteryActivityLastDays.this , intent , Toast.LENGTH_SHORT).show();
}
는 전 사용하는 경우는 한 Statment 같은 경우 (clicked.equal ("인 btn1") {//do something} ..? – user3245658
그래, 사용하면된다.'Intent '를 통해 원하는대로'String','int'를 전달할 수 있으며, 문서의 모든 메소드를 보여줍니다. 당신은'if ("btn1".equals (clicked)) {'NPE'에 대해 보호합니다 .' onCreate()'(suc를 호출하기 전에'getIntent()'를 호출하지 않도록하십시오. h를 메소드의 외부로) 또는'null '이됩니다. – codeMagic
고맙습니다. NPE – user3245658