この質問は実際には3部構成の質問です。私の問題の有効な解決策を提案してください。
アプリケーションの概要
スプラッシュ画面とListViewを備えたアプリケーションを作成しています。ランチャーアイコンをクリックすると、最初にスプラッシュ画面が表示され、3〜4秒後、スプラッシュ画面がListViewアクティビティを呼び出し、ユーザーは電話画面にListViewアイテムを残します。各アイテムをクリックすると、それぞれのテキストコンテンツがユーザーに表示されます。コンテンツを読んだ後、ユーザーは[戻る]ボタンをクリックし、ListViewアイテムセクションに戻ります。他のアイテムのコンテンツを読みたい場合は、そのアイテムをクリックするとそのページに移動します。よろしければ、電話の「戻る」ボタンをクリックして、アプリケーションを閉じます。
パート1-私が実際にやりたいこと
さまざまなlistViewアイテムをクリックするだけで、さまざまなテキストコンテンツ(通常のテキストではなくスタイル(太字/斜体/画像を含む))を表示したい。htmlページを作成してリソースフォルダーにローカルに保存できますが、わかりません。 onItemClickListenerを呼び出しているときにこれらのページを呼び出す方法。これがこの種の作業を行うための有効なアプローチであるかどうかはわかりません。アドバイスをお願いします。今のところ機能していません。
パート2-代わりに今やっていること
テキストコンテンツを呼び出すことができなかったため、テキストエディターでコンテンツを作成し、エディターですべての凝った作業を行い、コンテンツの準備ができたら、スクリーンショットを撮り、代わりにonItemClickListenerを呼び出しながらその画像を呼び出しました。正常に動作しており、ListViewアイテムをクリックすると画像が表示されます。
パート3-私が直面している問題
画像がユーザーに表示されたら、[戻る]ボタンをクリックすると、ListViewセクションに戻るのではなく、アプリケーションが閉じられます。どうやら、リストビューアイテムのクリックで開く画像は、リストビュー自体と同じアクティビティにあります。私が欲しいのは、ユーザーがテキストコンテンツを読み終えた後、ListViewセクションに戻ることができるようにすることです。
以下は、ListViewアクティビティのコードです 。publicclass MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView listView = (ListView) findViewById(R.id.menulist);
String[] values = new String[] { "1. First Article Here", "2. Second Article Here", "3. Third Article Here"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
R.layout.custom_listview, R.id.text1, values);
// Assign adapter to ListView
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, android.view.View view, int position, long id){
//
if(0==position)
{
setContentView(R.layout.image0);
}
else if (1==position)
{
}
}
});
} *コードはsetContentView(R.layout.image0);まで正常に機能します。*しかし、この後、「戻る」ボタンをクリックすると、アプリケーションをListViewセクションに戻したいのですが、代わりに閉じます。ご案内ください。