これはAndroidに関連しているため、Javaの問題です。
私のコードには、30のケースを含むswitchステートメントが含まれています。各ケースの本文は、そのケースに関連するインテントを開始するための同じ形式になっています。クラス名を引数として本体をメソッドとしてコーディングしようとしましたが、クラス名をインテントにハードコーディングする必要があるため、そのコードはコンパイルされません。
以下はスイッチのセクションです(長い道のり)
switch(mState) {
case 0:
Intent myIntent = new Intent();
myIntent.setClass(Home_ASM.this, Home_AS0.class);
startActivityForResult(myIntent, 0);
break;
case 1:
Intent myIntent1 = new Intent();
myIntent1.setClass(Home_ASM.this, Home_AS1.class);
startActivityForResult(myIntent1, 2);
break;
そして私はそのようなものをコーディングしたいと思います:
switch(mState) {
case 0:
myStart(Home_AS0.class,1);
break;
case 1:
myStart(Home_AS1.class,2);
break;
と方法
private void myStart(String state, int value) {
Intent myIntent = new Intent();
myIntent.setClass(Home_ASM.this, state);
startAcivityForResult(myIntent, value);
}
これを機能させる方法について何かアイデアはありますか?