SORU
20 Mart 2013, ÇARŞAMBA


Nasıl özel Eylem özel düğmeleri ile Bar uygulamak Android edebilir miyim?

Özel şöyle olmalıdır: ActionBar uygulamak istiyorum

enter image description here

Soru:

  1. Nasıl özel görünüm gibi bir düğme uygulayabilirsiniz ben sadece bir resim?
  2. Nasıl ActionBar üstüne bir çizgi çizebilir miyim?
  3. Ve nasıl ayırıcı çizgileri olmayan düğmeleri uygulayabilirim: ActionBar sekmeler veya ne ekleyebilirim?

CEVAP
20 Mart 2013, ÇARŞAMBA


enter image description here

Bu çok ActionBar API kullanmak istiyorsanız alırsınız olarak yakındır. Window garip bir hack yapmadan ActionBar yukarıda bir colorstrip yerleştirebilirsiniz, zahmete değmez emin değilim. Bildiğim kadarıyla MenuItems değişen, bu bir stil ile daha sıkı yapabilirsiniz. Bu gibi bir şey olurdu, ama ben henüz denemedim.

<style name="MyTheme" parent="android:Theme.Holo.Light">
    <item name="actionButtonStyle">@style/MyActionButtonStyle</item>
</style>

<style name="MyActionButtonStyle" parent="Widget.ActionButton">
    <item name="android:minWidth">28dip</item>
</style>

Ve sizin için özel düzen ActionBar şişirmek ekleyin.

    // Inflate your custom layout
    final ViewGroup actionBarLayout = (ViewGroup) getLayoutInflater().inflate(
            R.layout.action_bar,
            null);

    // Set up your ActionBar
    final ActionBar actionBar = getActionBar();
    actionBar.setDisplayShowHomeEnabled(false);
    actionBar.setDisplayShowTitleEnabled(false);
    actionBar.setDisplayShowCustomEnabled(true);
    actionBar.setCustomView(actionBarLayout);

    // You customization
    final int actionBarColor = getResources().getColor(R.color.action_bar);
    actionBar.setBackgroundDrawable(new ColorDrawable(actionBarColor));

    final Button actionBarTitle = (Button) findViewById(R.id.action_bar_title);
    actionBarTitle.setText("Index(2)");

    final Button actionBarSent = (Button) findViewById(R.id.action_bar_sent);
    actionBarSent.setText("Sent");

    final Button actionBarStaff = (Button) findViewById(R.id.action_bar_staff);
    actionBarStaff.setText("Staff");

    final Button actionBarLocations = (Button) findViewById(R.id.action_bar_locations);
    actionBarLocations.setText("HIPPA Locations");

Burada bu özel düzen:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:enabled="false"
    android:orientation="horizontal"
    android:paddingEnd="8dip" >

    <Button
        android:id="@ id/action_bar_title"
        style="@style/ActionBarButtonWhite" />

    <Button
        android:id="@ id/action_bar_sent"
        style="@style/ActionBarButtonOffWhite" />

    <Button
        android:id="@ id/action_bar_staff"
        style="@style/ActionBarButtonOffWhite" />

    <Button
        android:id="@ id/action_bar_locations"
        style="@style/ActionBarButtonOffWhite" />

</LinearLayout>

İşte renk şerit düzeni: kullan, sadece merge kullanmak İçin ne olursa olsun düzeni setContentView şişirmek.

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="@dimen/colorstrip"
    android:background="@android:color/holo_blue_dark" />

Burada Button stilleri:

<style name="ActionBarButton">
    <item name="android:layout_width">wrap_content</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:background">@null</item>
    <item name="android:ellipsize">end</item>
    <item name="android:singleLine">true</item>
    <item name="android:textSize">@dimen/text_size_small</item>
</style>

<style name="ActionBarButtonWhite" parent="@style/ActionBarButton">
    <item name="android:textColor">@color/white</item>
</style>

<style name="ActionBarButtonOffWhite" parent="@style/ActionBarButton">
    <item name="android:textColor">@color/off_white</item>
</style>

Burada kullanılan renk ve boyutları:

<color name="action_bar">#ff0d0d0d</color>
<color name="white">#ffffffff</color>
<color name="off_white">#99ffffff</color>

<!-- Text sizes -->
<dimen name="text_size_small">14.0sp</dimen>
<dimen name="text_size_medium">16.0sp</dimen>

<!-- ActionBar color strip -->
<dimen name="colorstrip">5dp</dimen>

Eğer bundan daha fazla özelleştirmek istiyorsanız, ActionBar kullanarak değil düşünebilirsiniz, ama bunu tavsiye etmem. Ayrıca Android Design Guidelines ile ActionBar. tasarım hakkında daha iyi bir fikir edinmek için okuma düşünebilirsiniz

Eğer ActionBar vazgeçmek ve kendi düzeni yerine kullanmayı seçerseniz, kullanıcıların uzun basın eylem-mümkün Toasts eklemek için emin olmalıdır"". Menuıtems Bu kolayca using this Gist elde edilebilir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ampisound

    Ampisound

    12 Kasım 2006
  • dougownsall

    dougownsall

    7 EKİM 2007
  • EatingIn

    EatingIn

    12 EKİM 2013