1

私はアンドロイドが初めてなので、少し助けが必要です。アプリで 4 つのアクティビティを作成しました。最初のアクティビティは MainActivity です。最初のアクティビティで ListView を割り当てました。listView から、クリックしたアイテムを示す文字列を含む 2 番目のアクティビティにリダイレクトされます。どの項目を選択しても問題ありませんが、その 2 番目のアクティビティのみにリダイレクトされます。唯一の違いは、渡される文字列の値が異なることです。ListView の onItemClick 関数でこのコードを使用しました。

String item  = (String) listView.getAdapter().getItem(position);;
                Intent i = new Intent(MainActivity.this, Activity2.class);
                    i.putExtra("item_selected", item);
                    startActivity(i); 

このコードは、問題なく文字列を使用して 2 番目のアクティビティにリダイレクトします。2 番目のアクティビティには、radioButton グループ内に "Launch Type 1" と "Launch type 2" の 2 つのオプションと、機能を実行するためのボタンがあります。そこで、ボタンの onClick メソッド内でこのコードを使用して、次に移動するアクティビティを決定しました。

Intent intent = getIntent();
        String item = intent.getExtras().getString("item"); 
        RadioButton launch1 = (RadioButton) findViewById(R.id.launch1);

    //The problem code:..
    if(launch1.isChecked()){
        if(item=="ListView_Item1"){Intent launch1=new Intent(this, Launch_activity1.class); startActivity(launch1);}
    }
    else{
        if(item=="Item 1"){Intent launch2=new Intent(this, Launch_activity2.class); startActivity(launch2);}
    }

Eclipse では、コードにエラーがないことを示しています。しかし、エミュレーターで実行すると、2 番目のアクティビティに到達するまで問題なく開始されます。ボタンをクリックしても何も行われず、新しいページにリダイレクトされません... :(ボタンの「if/else」ステートメントを作成するのを手伝ってください...そしてもっと良いものがあれば教えてくださいタスクを達成する方法...

前もって感謝します。返信を待っています....

4

2 に答える 2

0

equals()Java での文字列またはオブジェクトの比較に使用します。

したがって、コードは次のようになります。

if(launch1.isChecked()){
        if(item.equals("ListView_Item1")){Intent launch1=new Intent(this, Launch_activity1.class); startActivity(launch1);}
    }
    else{
        if(item.equals("Item 1")){Intent launch2=new Intent(this, Launch_activity2.class); startActivity(launch2);}
    }
于 2013-07-25T11:43:38.937 に答える