2011-11-09 1 views
1

Androidアプリのアプリ内ヘルプ画面を作成しようとしています。ヘルプアクティビティは、オプションメニューからヘルプを選択したユーザによって作成されます。最初の画面にヘルプカテゴリのリストが表示されます。新しい画面を表示するだけで新しいアクティビティが必要ですか?

ユーザーがカテゴリをクリックすると、そのカテゴリに関する詳細を表示する新しい画面に表示されます。

バックボタンの機能を維持したいと思っています(私は思っています)。各カテゴリの詳細について新しいアクティビティがあればうまく動作します。

しかし、は、各サブカテゴリの過度の動きに対応していますか?

答えて

0

間違いなく、アクティビティの変更についてきちんとしたアニメーションが必要な場合を除き、過剰です。 FrameLayoutはあなたの友人です。

3

サブカテゴリを表示するアクティビティが1つもない理由は、SubCategoryActivityです。このアクティビティを開始するときは、表示するサブカテゴリ(intまたは文字列)を知ることを余儀なくされます。

これらのすべてのカテゴリのUIがすべて非常に異なる場合、これはうまく機能しない可能性があります。

0

サブカテゴリの代わりにダイアログを使用できますか?そうでない場合は、sgarmanの解決策に進んでください。インテントを起動するときに、ヘルプの内容をエキストラとして渡す1つの「HelpActivity」を作成します。

0

同じアクティビティを再利用したい場合は、1)アクティビティを1つ作成して(HelpActivityと言う)、テキストビュー、ボタンなどのレイアウトを設計しますが、textview値は設定しないでください。

2)ヘルプカテゴリ一覧のすべてのカテゴリについて、毎回HelpActivityを呼び出してください。

3)は、このコードを使用して呼び出し元のアクティビティをチェック:インタフェースを作成し、同様に別々にすべての活動のために一定の活性を宣言する:次に呼び出し識別//

パブリックインターフェイスActivityConstants {

public static final int callingACTIVITY1 = 1001; 
public static final int callingACTIVITY2 = 1002; 
public static final int callingACTIVITY3 = 1003; 

} アクティビティ

int callActivity = getIntent()。getIntExtra( "calling-activity"、0);

switch(callingActivity) 
    { 
    case ActivityConstants.callingACTIVITY1: 

     // do your stuff here 
        // set textview value based on callingACTIVITY1 
     break; 

ように...

3)あなたは、その後 super.onBackPressed()を使用して、ユーザーがヘルプの指示を読んでいた後、活動を呼び出すに戻ったしたい場合は、 //これはあなたの呼び出しアクティビティに戻ります。

これはあなたに役立つと思います。

関連する問題