私はユーザーに数学の質問をするアプリを作ろうとしています。私は乗算、加算などのいくつかのボタンを持っています。前のアクティビティでどのボタンがクリックされたかに基づいて、どの演算子を使用するかを指示する一連のif/else文をコードに追加します。アクティビティを開いたボタンに基づいてアクションを変更しますか?
この情報にアクセスするにはどうすればよいですか?
私はユーザーに数学の質問をするアプリを作ろうとしています。私は乗算、加算などのいくつかのボタンを持っています。前のアクティビティでどのボタンがクリックされたかに基づいて、どの演算子を使用するかを指示する一連のif/else文をコードに追加します。アクティビティを開いたボタンに基づいてアクションを変更しますか?
この情報にアクセスするにはどうすればよいですか?
ボタンIDをインテントに挿入するだけです。このような;
Intent i=new Intent(context,MyActivity.class);
i.putExtra("button_id", buttonID);
context.startActivity(i);`
あなたのアクティビティでは、
Intent I =get intent();
Int buttonID = intent.getIntExtra("button_id");
新しいアクティビティは常にインテントによって開始されます。何らかの情報でアクティビティーを開始したい場合は、そのインテントにその情報を入れて開始することができます。このインテントは、開始アクティビティーのgetIntent()メソッドによって捕捉できます。
例:あなたの最初の活動で
:
intent = new Intent(MainActivity.this,SecondActivity.class);
switch(radioGroup.getCheckedRadioButtonId()){
case R.id.add:
intent.putExtra("operator","add");
startActivity(intent);
break;
case R.id.subtract:
intent.putExtra("operator","subtract");
startActivity(intent);
break;
case R.id.multiply:
intent.putExtra("operator","multiply");
startActivity(intent);
break;
case R.id.divide:
intent.putExtra("operator","divide");
startActivity(intent);
break;
}
そして、あなたの第二の活動中:
public class SecondActivity extends AppCompatActivity {
Intent intent;
@Override
public void onCreate(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) {
super.onCreate(savedInstanceState, persistentState);
intent = getIntent();
String operation = intent.getStringExtra("operator");
switch(operation){
case "add":
//your code
break;
case "subtract":
//your code
break;
case "multiply":
//your code
break;
case "divide":
//your code
break;
}
}
}
あなたは常にエクストラ使ってあなたに活動を引数を渡すことができますその値に基づいていくつかのアクションを実行します。
int extraValue = 5;
Intent i = new Intent();
i.putExtra("EXTRA_NAME", extraValue);
startActivity(i);
次に、ターゲットアクティビティの名前でこの追加名を取得できます。
extraValue = getIntent().getIntExtra("EXTRA_NAME", -1); // here -1 is default value.
'getExtras()。getInt()'対 'getIntExtra?' –
複数のアクティビティを使用していますか? – Anil
http://www.androidauthority.com/build-a-calculator-app-721910/これは簡単なアンドロイド電卓アプリを構築する上で参考になるチュートリアルのようです –
@Anil私は2つのアクティビティを持っています - 1つは乗算/ 、他の人には質問をするだけです。私は、すべての異なるタイプの操作に同じアクティビティを使用できるようにしたいと考えていました。ちょうどJavaをわずかに変更しました。 – Emma