SORU
14 EKİM 2012, Pazar


Nasıl ActionBar özel görüntülemek için?

Actionbar (bunun için ActionBarSherlock kullanıyorum) özel arama görüntülemek istiyorum.

Anladım:

enter image description here

Ama özel düzen (edittext alanı) mevcut tüm genişliği işgal için yapmak istiyorum.

Önerilen here özel düzeni uygulamaya çalıştım.

Benim özel düzen search.xml vardır:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    style="?attr/actionButtonStyle"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_gravity="fill_horizontal"
    android:focusable="true" >

    <FrameLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|fill_horizontal" >

        <EditText
            android:id="@ id/search_query"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="left|center"
            android:background="@drawable/bg_search_edit_text"
            android:imeOptions="actionSearch"
            android:inputType="text" />

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right|center_vertical"
            android:src="@drawable/ic_search_arrow" />

    </FrameLayout>

</LinearLayout>

Ve MyActivity:

ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setIcon(R.drawable.ic_action_search);

LayoutInflater inflator = (LayoutInflater) this .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflator.inflate(R.layout.search, null);

actionBar.setCustomView(v);

Nasıl özel düzen actionBar tüm genişliği işgal etmeye yapabilir miyim?

Yardım, lütfen.

CEVAP
14 EKİM 2012, Pazar


Bunun için bir hile var. Tüm yapmanız gereken bir ana konteyner olarak LinearLayout yerine RelativeLayout kullanmaktır. Önemli android:layout_gravity="fill_horizontal" bunun için ayarlayabilirsiniz. Bu şekilde olması gerek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Music EuroDance 2

    Music EuroDa

    12 Mayıs 2011
  • Wii Minute Radio

    Wii Minute R

    31 Mayıs 2008
  • wolfys you tube

    wolfys you t

    22 Kasım 2006