0

ActionBarSherlockライブラリを使用してカスタム レイアウトをActionBarに追加しようとしています。エラーはないように見えますが、レイアウトが表示されていません。

        View customView=LayoutInflater.from(this).inflate(R.layout.layout_actionbar_top,null);
    ImageButton ab_camera=(ImageButton) customView.findViewById(R.id.ab_camera);
    ImageButton ab_gallery=(ImageButton)customView.findViewById(R.id.ab_gallery);
    ab_camera.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            startActivity(new Intent(getBaseContext(),CameraActivity.class));
        }});

    ab_gallery.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent intent=new Intent();
            intent.setAction(Intent.ACTION_GET_CONTENT);
            intent.setType("image/*");
            intent.addCategory(Intent.CATEGORY_OPENABLE);
            startActivityForResult(intent, IMAGE_REQUEST_CODE);

        }});
    LayoutParams params=new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,Gravity.RIGHT | Gravity.CENTER_VERTICAL);
    getSupportActionBar().setCustomView(customView,params);

代わりに、ActionBar のカスタム レイアウトなしでアクティビティが読み込まれます。

LinearLayoutこれは、水平方向のカスタム レイアウトです。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ImageButton android:id="@+id/ab_camera"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:src="@android:drawable/ic_menu_camera"/>

<ImageButton android:id="@+id/ab_gallery"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:src="@android:drawable/ic_menu_gallery"
             />
</LinearLayout>
4

1 に答える 1