ちょっとした質問です。私はAndroidの真の初心者ですので、ご容赦ください。
ある種の図書館活動をする必要があります。約 30 個のキーワードのリストが必要です。キーワードをクリックすると、別の画面に移動してコンテンツ (およびおそらく画像) が表示されます。例:キーワード:ロンドンコンテンツ: これは blabla の都市です。それは簡単です。
これを行う最も簡単な方法は何ですか? リンクやサンプルコードは本当に素晴らしいでしょう! もちろん、簡単な答えも役立ちます。
最初に: 新しいプロジェクトで既に が作成されているかどうかを確認します。作成されていない場合は、フォルダー内に をactivity_main.xml
作成して、後で に割り当て、名前を付けます。Android XML Layout
/res/layout
Activity
activity_main.xml
レイアウトでは、 内に を追加したり、そのキーワードを表現したいものを追加LinearLayout
しTextView
たりできます。
注 1:android:id=""
後でコードで使用するため、覚えやすい名前を付けてください。
次に、onCreate
メソッドに移動してMainActivity.java
、次のコード行を記述します。
this.setContentView(R.layout.main_activity.xml);
クラス宣言のMainActivity.java
直後に、作成した要素の変数を次のように宣言しますactivity_main.xml
。
LinearLayout londonKeywordLayout = null;
TextView londonKeyword = null;
LinearLayout anotherKeywordLayout = null;
TextView anotherKeyword = null;
String TitleString;
String DetailString;
String ImgPathString;
LinearLayout
とTextView
importsを含めることを忘れないでください。Ctrl + Shift + O を使用して、インポートを自動的に行うことができます。
次に、メソッドに戻り、この方法onCreate
の要素に変数を割り当てます。activity_main.xml
londonKeywordLayout = (LinearLayout) findViewById(R.id.londonKeywordLayoutID);
londonKeyword = (TextView) findViewById(R.id.londonKeywordID);
"londonKeywordLayoutID"
たとえば、注1で述べたように、必要に応じて変更してください。
DetailActivity
次に、上で説明したのと同じ方法を使用して、すべてのキーワードの詳細を処理および表示するを作成する必要があります。
次に、割り当てた直後に、onClick
イベントを設定して詳細を開くことができますActivity
。
OnClickListener keywordListener = new OnClickListener() {
@Override
public void onClick(View v) {
if (v.getId() == 1){
DetailString = "London details";
TitleString = "London.";
ImgPathString = "the path to london img";
}
if (v.getId() == 2){
DetailString = "another details";
TitleString = "another.";
ImgPathString = "the path to another img";
}
Intent i = new Intent(this,DetailActivity.class)
i.putExtra("DETAILTEXT", DetailString);
i.putExtra("TITLE", TitleString);
i.putExtra("IMAGEPATH", ImgPathString);
startActivityForResult(i, 1);
}
};
londonKeywordLayout.setOnClickListener(keywordListener);
londonKeywordLayout.setId(1) //1 for london.
anotherKeywordLayout.setOnClickListener(keywordListener);
anotherKeywordLayout.setId(2) //2 for another.
他のすべてのキーワードに対して同じことを行います。
上記でxmlの作成とレイアウトとテキストビューの宣言について説明したすべてのDetailActivity.java
ことを行いますが、現時点では、すべてのキーワードに使用される1つだけを作成し、動的になります。クラス宣言の後にこれらの変数を宣言します。
String detailText;
String titleText;
String imgPath;
メソッドに移動して、この方法でonCreate
送信した値を取得する必要があります。Intent
Bundle extras = getIntent().getExtras();
detailText = extras.getString("DETAILTEXT");
titleText = extras.getString("TITLE");
imgPath = extras.getString("IMAGEPATH");
次に、.setText(detailText)
のタイトルに使用するTextView
必要がDetailActivity
あり、他の文字列でも同じことを行い、画像を処理してDrawing
.
基本的には、何か助けがあれば、ここにコメントしてください。私はあなたを助けようとします.
幸運を。
ADT で Eclipse を使用している場合は、[New] -> [Android Application Project] で開始できる [New Android Application] ウィザードからマスター/詳細フローを使用できます。