私が理解するところでは、LayoutInflaterはXMLをビューに変換します。しかし、ボタン、テキストビュー、または他のウィジェットをコードで使用すると、これらのビューを最初に膨張させなくても、単にfindViewById()を使用する必要があります。これらのビューは自動的に膨らんでいますか?もしそうなら、いつビューが自動的に膨らんで、いつ手動で膨らませる必要がありますか?ビューは自動的に膨らんでいますか?
答えて
は、あなただけのxmlレイアウトを膨らませる必要があり、その後、すべてのviewgroupsとビュー(ボタン、TextViewの、のEditText、など。)を自動的に表示されます。
したがって、アクティビティクラスでは、oncreateメソッドにSetContentview()という行があり、これはxmlレイアウトを膨張させます。
アクティビティとxmlを手動で作成した場合は、ビューを手動で展開します。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.your_activity);
}
Activity
は、onCreate
メソッドにsetContentView(R.layout.<your_layout_here>)
を呼び出す必要があります。これにより、指定されたレイアウトのXMLがActivity
のビュー階層に展開されます。あなたは、ビュー階層にレイアウト(およびその子View
秒のすべてを)膨らませたら、あなたはへの参照を取得するためにfindViewById(R.id.<your_view_id>)
を使用することができます
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.<your_layout_here>, container, false);
}
:Fragment
については、以下のようなonCreateView
メソッドをオーバーライド実際のView
オブジェクトを階層に展開して再生します。
いくつかの事はここにある:あなたの活動のための
1.ビュー(UI画面)、それは、setContentView()方法で設定されています。例えば、特定のUIコンポーネントの
ビューボタンは、xmlのactivity_layoutで作成するか、または特定のUIコンポーネントのの別のxmlレイアウトファイルを展開することができます。最高の例とあなたのカスタマイズしたトースト用のxmlレイアウトファイルを膨らませるのが好きです。
そこで、ここでsetContentView()と別のビューのXMLレイアウトファイルを膨張に関するものである:これらの両方は、ビューおよびビューコンポーネントのレイアウトを提供 それらの両方がバイナリを作成しますレイアウト用に出力し、上記のように使用してください。
- 1. Androidスタジオ - 膨張したビューからJavaクラス変数を自動的に作成
- 2. 膨らんだビューと要素を膨らますと
- 3. ジンジャーブレッド - 膨らんだXMLビューに黒いスペースがあります
- 4. PlaceAutoCompleteAPIのデータがビューに膨らんでいない
- 5. 膨らんだビューがクリックリスナーに反応しないのはなぜですか?
- 6. 膨らんだレイアウト/ビューをアニメーションで新しい位置に移動
- 7. 膨らんだビューはonClickイベントをキャッチしません
- 8. PagerAdapterで膨らんだビューから値を取得
- 9. 機能が膨らんでいます - いくらですか?
- 10. ListViewは自動的にビューをリサイクルしますか?
- 11. ビューを新しいスーパービューに移動すると、古いスーパービューから自動的に解放されますか?
- 12. 名前で自動的にビューをバインド
- 13. 呼び出されたクラスメソッドからの膨らんだビュー
- 14. ビューから自動的にデータを挿入
- 15. Azure WebAppsは自動的にどのくらいの頻度で自動的に修正されますか?
- 16. 起動時にビューを自動的に切り替えます。
- 17. Androidビューのカスタムビューからの膨張エラー
- 18. Djangoは自動的に毎日ビューを実行します
- 19. カードビューはRecyclerViewで膨らんでいません
- 20. 編集テキストはメニュー内で膨らんでいません
- 21. タブ付きのアクティビティで膨らんだレイアウトのビューを表示するには?
- 22. ストリームはエラーで自動的に閉じられますか?
- 23. Eclipseビューを自動的に閉じるにはどうしたらいいですか?
- 24. Yii2:GiiでMySQL/MariaDBビューからCRUDを自動的に生成する方法
- 25. 2回以上膨らませずに、膨張したビューを再利用
- 26. ビューの膨張の違い
- 27. Knockout.jsは動的なajaxコールからのビューを更新していません
- 28. Android ScrollViewは自動的にビューの一番下までスクロールします
- 29. PERFORCEはコマンドラインから自動的に解決しますか?
- 30. Longlistselectorは自動的に自動更新されますか?
あなたの基本的な質問は、「ビューを手動で膨張させる必要があるのはいつですか?いつ自動的に行われますか? Ankesh kumar Jaisansariaは良い返答をしました。また、ここで見て:[setcontentviewとインフレータの違い](http://stackoverflow.com/questions/17808177/difference-between-setcontentview-and-inflater)。最後に、このスレッドを読む:[フラグメントvsアクティビティとビュー](http://stackoverflow.com/questions/10478233/android-i-need-some-clarifications-of-fragments-vs-activities-and-views) – paulsm4
インフレータ単にXMLから実際のViewオブジェクトに変換することを意味します。 findViewByIdは、実際のビューオブジェクトを探して操作することができます。 –