問題タブ [android-tabhost]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Androidに[その他...]タブを自動的に追加
多くのタブを含むアプリケーションを作成していますが、タブの数が5を超える場合があります。そこで、iPhoneのように動作させたいと思います。つまり、追加のタブを[その他...]タブに移動します。この機能がTabHostでサポートされているかどうか、または私に有利な既存のオープンソースウィジェットがあるかどうかを知りたいです。ありがとう。
xml - Android:TabHost 方法: メニュー ボタンの既存のタブに新しいコンテンツを設定しますか?
私は最近 Android プログラミングを開始し、TabHost を介してタブで区切られた歴史的なテキスト ドキュメントを表示する最初のプログラムに取り組んでいました。プログラムを 1 つのアクティビティに限定し、TabSpec で setContent を使用して異なる XML ビューを切り替えるだけでした。
このドキュメントには、対応するためにテキスト ビューを作成したテキストの未編集バージョンと修正済みバージョンの両方が含まれています。標準メニューを実装して、「修正を表示」および「オリジナルを表示」するボタンを表示し、変更されたタブの内容を (タブまたはそのインジケーターを変更せずに) 切り替えたいと考えました。
TabHost API を読みましたが、TabSpec の setContent() を使用して既存のタブ コンテンツを編集する方法はありません。AFAIK TabWidget は実際のタブにのみ影響し、タブを押したときに表示されるコンテンツには影響しません。
私は、mTabSpec リストを更新するもう 1 つのメソッドを含めながら、TabHost と super() のすべての元のメソッドを拡張する新しいクラスを作成することを考えました。
私の質問は、特定のタブの frameLayout ビューを更新して、指定したコンテンツを表示するにはどうすればよいですか?
android - Android: stack management for views in a tab?
I see some answers here prefer views over activities as contents of tabs. Correct me if I am wrong. My understanding is that by switching out views, it's possible to keep the navigation flow inside a tab (more user friendly, I think). But I wonder how to manage the view stack then in case of the back button events. Also this could cause one giant Activity with large amount of views, which might not be good.
So I wish to know why exactly views as contents is preferred before I change my current application to this.
Thanks,
android - AndroidのTabHostのすべてのタブで共通の下部レイアウト?
4 ~ 5 個のタブを持つ TabHost があります。すべてのタブの下部を同じにしたい。すべてのタブに下部を追加する方法はありますか? または、すべてのレイアウト ファイルに xml コードを配置する必要がありますか。
誰かが解決策を持っているかどうか教えてください。
よろしく
スニル
java - タップに応答しないListViewアイテム
私はAndroidに足を踏み入れたばかりで、3つのタブを持つTabHostを含むUIを構築しました。各タブは、独自のアクティビティによって強化されています。最初のタブには、事前に入力された行のセットを含むリストビューが含まれており、カスタムArrayAdapterから構築されています。
私が遭遇している問題は、ListViewの行がどれもタップできないことです。つまり、それらをタップしてもオレンジ色の選択はありません。Nexus Oneでスクロールボールを使用すると選択されますが、タッチジェスチャが応答しないようです。
すべてのUIは、TabHost-> LinearLayout-> TabWidget/FrameLayoutを含むmain.xmlと私のListViewUIを含むnearby_activity.xmlファイルを含むXMLファイルを使用して処理されています。
そして、選択したタブに表示するように設定されているアクティビティの関連コード。
私のリストビュー行には、XMLファイルも入力されています。
あなたが提供できるどんな助けにも感謝します。
android - Androidでタブインジケーターを動的に変更する
私のアプリケーションはタブインジケーターを動的に更新する必要があります。TabSpec.setIndicator()を呼び出してこれを実行しようとしていますが、機能しません。これが私のコードです:
TabActivityのonCreateメソッドの場合:
次に、タブインジケーターを別の文字列(「xyz」など)に変更する必要があります
しかし、それは機能しません。それで、タブホストに追加された後にタブインジケーターを変更する方法を知りたいですか?どうもありがとう。
解決
@CommonsWareのおかげで、TabWidget.getChildAtを使用して作成しました。便利なコードを次に示します。
android - 環境設定を変更すると、onSharedPreferenceChangeListener が複数回呼び出されるのはなぜですか
3 つのタブを持つアプリを作成しました。各タブには、データ ソースが異なる同じリスト ビューがあります。タブホスト アクティビティで SharedPreferences をセットアップしましたが、onSharedPreferenceChangeListener メソッドをリスト アクティビティに配置しました。設定を変更すると、リスナーが呼び出され、データベースが更新されます。これはすべて機能しています。ただし、タブ 1 のデータを変更すると、リスナーが 1 回呼び出されます。タブ 2 のデータを変更すると 2 回呼び出され、タブ 3 のデータを変更すると 3 回呼び出されます。なぜこのように機能するのか考えていますか?リストアクティビティで共有設定をセットアップでき、それで問題を回避できると思いますが、別のタブにある場合にリスナーが複数回呼び出されるのはなぜですか。
ブロッコリー
android - AndroidTabHostのタブのアクティビティからタブを更新します
TabActivityがあり、3つまたは4つのタブがあります。
TabAには、商品を一覧表示するExpandableListViewが必要です。TabCを、おそらくそれ自体のListViewを使用して、一種の「ショッピングカート」として機能させたいと思います。
アクティビティからTabHostと対話する方法はありますか?TabA内のボタンをクリックして更新し、TabCに切り替えられるようにしたいと思います。これは可能ですか?タブのアクティビティで親メソッドを呼び出すことはできますか?
android - Androidの強制タブアクティビティの作成?
タブホストをメインアクティビティとするAndroidアプリケーションがあります。いくつかのアクティビティを目的として、タブホストに複数のタブを追加しています。
私の問題は、タブをクリックするまでこれらのアクティビティが作成されない(onCreateが呼び出されない)ことです。ブロードキャストレシーバーを登録する必要があるため、これは問題です。特定のタブが開かれる前に送信されるブロードキャストが存在する可能性があります。
私はこれを回避しようとしました:
- レシーバーを静的に設定し、他の場所から登録します。メソッドを呼び出す必要があるため、これは不可能です。
- tabHost.setCurrentTabByTag(the_tag)を呼び出してから、ルートタブに戻ります。これはたまにしか機能せず、これは非常に醜い解決策です。
- アクティビティを使用せず、代わりにビューを使用します。また、tabHostアクティビティを1つの巨大なマスタークラスに変えて、あらゆる種類の無関係なことを実行するため、あまり洗練されたソリューションではありません。
この問題の最善の解決策は何でしょうか?受信者がいないときに送信されたブロードキャストを単に消えるのではなく、どういうわけか「キュー」にすることはできますか?タブアクティビティを強制的に作成できますか(これは問題ではありません。ユーザーは、ある時点ですべてのタブを使用することがほぼ保証されています)。他のアイデア?
編集:
この質問のCommonsWareによると; AndroidTabHostのタブのアクティビティからタブを更新します
タブをアクティビティではなくビューとして実装する方が良いかもしれません...それは私の質問をいくらか変えます:
同じアクティビティで異なる種類のロジックを分離するにはどうすればよいですか?30以上のメソッドの超活動を本当に楽しみにしていません。
android - マルチビュー TabActivity で戻るボタンをエミュレートする
複数のタブを持つ TabActivity があります。各タブは特定のビューに対応しており、これらのビューはさらに別のビューに切り替えることができます。たとえば、私のタブの 1 つは RSS フィード リストを表示し、ユーザーが RSS フィードの 1 つをクリックすると、記事のリストを表示するビューに切り替わり、ユーザーがタイトルの 1 つをクリックすると、記事全体が表示されます。
アプリケーションに「戻る」ボタンのサポートを追加します。たとえば、記事全体の表示で、ユーザーが「戻る」ボタンを押した後、記事の一覧表示に戻る必要があります。ユーザーがもう一度「戻る」ボタンを押すと、アプリケーションはフィード リスト ビューに戻るはずです。
私の考えは、ナビゲーション中を維持することですStack<View>
。ユーザーが「戻る」ボタンを押すたびに、プログラムはビューをスタックからポップし、現在のビューとして設定します。しかし、TabHost で現在のビューを設定する方法を知りたいです。どうもありがとう。