web-dev-qa-db-ja.com

listactivityにアクションバーを追加する

こんにちは。リストを作成し、アクションバーを追加したいと思います。私はAndroidに慣れていないので、ListActivityの使用中にアクションバーを追加する方法を知りたいです。助けていただければ幸いです。コードに感謝します。

     public class MainActivity extends ListActivity {

     ArrayList<Item> items = new ArrayList<Item>();

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


        items.add(new SectionItem("2x2 Matrices"));
        items.add(new EntryItem("Adding 2 Matrices"));
        items.add(new EntryItem("Subtracting 2 Matrices"));
        items.add(new EntryItem("Multiplying 2 Matrices"));
        items.add(new EntryItem("Multiplying by a constant"));
        items.add(new EntryItem("Dividing 2 Matrices"));
        items.add(new EntryItem("Negative of a Matrix"));
        items.add(new EntryItem("Inverse of a Matrix"));
        items.add(new EntryItem("Determinant of a Matrix"));

        /*Section2*/
        items.add(new SectionItem("3x3 Matrices"));
        items.add(new EntryItem("Item 4"));
        items.add(new EntryItem("Item 5"));
        items.add(new EntryItem("Item 6"));
        items.add(new EntryItem("Item 7"));
        /*Section3*/
        items.add(new SectionItem("Category 3"));
        items.add(new EntryItem("Item 8"));
        items.add(new EntryItem("Item 9"));
        items.add(new EntryItem("Item 10"));
        items.add(new EntryItem("Item 11"));
        items.add(new EntryItem("Item 12"));

        EntryAdapter adapter = new EntryAdapter(this, items);

        setListAdapter(adapter);
    }

}
11
Yousef Haraga

次に、アクティビティのonCreateOptionsMenu()メソッドで、メニューリソースを指定されたメニューに拡張して、各項目をアクションバーに追加します。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu items for use in the action bar
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main_activity_actions, menu);
    return super.onCreateOptionsMenu(menu);
}

アクションバーの詳細

5
Peregreen

あなたはホロテーマを使うことができます、あなたはこの画面だけで必要ですか?

Androidマニフェスト:

1つの画面のみに、次のようにアトリビュートテーマを配置します。

<activity
Android:theme="@Android:style/Theme.Holo.Light.DarkActionBar">
</activity>

すべての画面で、アプリケーションタグにアトリビュートテーマを配置します。

<application
Android:theme="@style/My_Theme" >

また、ホロライトテーマに基づいてカスタムテーマを作成することもできます。

例:

Android:theme="@style/My_Theme" >

Styles.xml内

<style name="My_Theme" parent="@Android:style/Theme.Holo.Light.NoActionBar"></style>
9
Igor Morais

これが良い方法です:

レイアウトファイル内:activity_main.xml

<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical" >

<ListView
    Android:id="@+id/list"
    Android:layout_height="wrap_content"
    Android:layout_width="match_parent">
</ListView>

今あなたの活動のために:

public class MainActivity extends ActionBarActivity
{
    private ListView listView;
    private ListAdapter myAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        listView = (ListView) findViewById(R.id.list);
        myAdapter = new ListAdapter(getApplicationContext());
        listView.setAdapter(myAdapter);

幸運を!

7
Abdelrahman Aly