11

自分のプロジェクトでActionBarCompatを使用しようとしています。サンプルプロジェクト(http://developer.android.com/resources/samples/ActionBarCompat/index.html)を既に開いていますが、自分で実装する方法がわかりません。

ある種のチュートリアルが見つかりません。このプロジェクトをライブラリとして作成する必要がありますか?誰かが私にいくつかの指示を教えてもらえますか?

4

2 に答える 2

22

実装に関しては、MainActivity.javaクラスの下で提供されるサンプルコードに固執するだけです。ここまたは下にあります<your local android-sdks folder>/samples/android-15/ActionBarCompat/src/com/example/android/actionbarcompat/MainActivity.java。一般的に、あなたがする必要があるのは次のことだけです:

  1. アクションバーのアイテムを宣言するメニューリソースをコーディングします(http://developer.android.com/resources/samples/ActionBarCompat/res/menu/main.htmlを参照) 。
  2. 拡張するアクティビティをコーディングするActionBarActivity
  3. onCreateOptionsMenu()手順1でコーディングしたメニューを膨らませるようにオーバーライドします
  4. onOptionsItemSelected()手順1で定義したActionBarアイテムのいずれかをユーザーがタップしたときにイベントを処理するようにオーバーライドします。

ActionBarCompatコードからAndroidライブラリプロジェクトを構築することは理にかなっていると思います。次に、カスタムAndroidプロジェクトから参照できます。Apacheライセンスバージョン2.0でライセンスされていることを忘れないでください。

于 2012-04-25T14:12:40.150 に答える
9

この回答では、新しいActionBarCompatライブラリ(2013年7月)の使用方法について説明します。

Android Studioで、これを開いbuild.gradleて追加します。

dependencies {
    compile 'com.android.support:appcompat-v7:18.0.+'
}

Eclipseで、のコードに基づいてライブラリプロジェクトを作成し、プロジェクトsdk\extras\android\support\v7\appcompatに追加します。

アクティビティを拡張する必要がありActionBarActivityます。

import android.support.v4.view.MenuItemCompat;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.SearchView;
import android.support.v7.app.ActionBar;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends ActionBarActivity {

    ActionBar ab;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ab = getSupportActionBar();
        ab.setTitle("Test");
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);

        MenuItem searchItem = menu.findItem(R.id.action_search);
        SearchView searchView = 
                    (SearchView) MenuItemCompat.getActionView(searchItem);

        return super.onCreateOptionsMenu(menu);
    }
}

Theme.AppCompatテーマは、次のようなテーマの1つである(または拡張する)必要があります。

<activity android:theme="@style/Theme.AppCompat.Light" ... />

出典:ActionBarCompatをプロジェクトに追加する方法、GabrieleMariottiによるブログ投稿

于 2013-07-28T00:44:09.447 に答える