私は現在リストビューを持っており、リストビューを別のアクティビティに誘導しようとしています。つまり、アイテムをクリックして1-4と言うと、それに対応するクラスが得られます。私がそれを行うと考えることができる唯一の方法は、リストビュー内の項目のテキストを取得し、その名前のアクティビティを開始することです。そのコードは次のようになります。変数であるAndroidでインテントを呼び出す
final String chosen = "";
chosen = (String) ((TextView) view).getText();
Intent nextScreen = new Intent(getApplicationContext(), chosen.class);
これは動作しません。最後の行には、選択したものを型に解決できないというエラーが表示されます。
Log.d("Debug", "Test"+((TextView) view).getText());
は私にlogcatで正しい選択したアイテムを与えるので、私はその((TextView) view).getText()
作品を知っています。
アイデア/提案はありますか?おかげで事前
EDITに:
私はこれに私のコードを変更してみました:
String chosen = (String) ((TextView) view).getText();
try {
Intent nextScreen = new Intent(getApplicationContext(), Class.forName(chosen));
startActivity(nextScreen);
Log.d("Debug", "Good"+((TextView) view).getText());
}
catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Log.d("Debug", "Bad"+((TextView) view).getText());
}
Log.d("Debug", "Final"+((TextView) view).getText());
ログの猫は私に
BadItem1
FinalItem1
の出力を与えた私はつもりだと思いますこれについて誰かが指摘したように間違ったやり方です。私はOnItemClickListener
を使うべきだとも思っています。私はそれを試し、今後のより簡単なヘルプのために私の結果を掲載します。
、それはあなたを助けましたあなただけの文脈 – Blundell