1

私はAndroidプログラミングの初心者です。ActionBarSherlock と NavigationTabs を使用して、アプリ スタイルの Google ショップのメイン アクティビティを作成しました。フラグメントはそれぞれ別のアクティビティ (フラグメント 1 フラグメント 2 など) を参照し、各フラグメントはレイアウトを拡張します。

ただし、私は xml でレイアウトを作成し、Java でカスタマイズすることに慣れています。時刻に応じて、またはデータベース内の一部のデータに応じて異なるテキストを配置し、ボタンなどに機能を与える.しかし、フラグメントクラスでは、setContentView を使用して各テキストまたはボタンを操作することさえできません。データベースを使用するためのコンテキストを設定すると、問題が発生します。

フラグメント内の xml レイアウトをカスタマイズするにはどうすればよいですか? または、何をするのが正しいでしょうか?

ここに私のフラグメント:

public class Fragment1 extends SherlockFragment{


public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
    return inflater.inflate(R.layout.menu, container, false);

}
4

3 に答える 3

2

これは思ったより簡単です。onCreateView instanciate au は Fragment のビューを返します。あなたが言ったように、単純なアクティビティでは、setContentView() でビューを設定 (およびインスタンス化) し、findViewById() でビューを取得します。

findViewById() は、必要なビュー アイテムを返すようにビューに要求します。返す前にビューから呼び出すことができます。このような:

public class Fragment1 extends SherlockFragment{

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
    View v = inflater.inflate(R.layout.menu, container, false);

    // For example, getting a TextView
    TextView tv = (TextView) v.findViewById(R.id.myTextView);
    // do your job

    return v;
}
于 2013-07-12T18:07:59.410 に答える