android之buttonBar的设计--style的引用



 今天看见一个人说想弄一个按钮并排的效果,要求给人的感觉就是一个大控件,问有没有现成的控件可用,回答当然是否定的,只不过android提供了一个style (@android:style/ButtonBar),通过这个样式就可以用了。

我查看了源码 原来这里面什么都没有

<style name="ButtonBar">
        <item name="android:paddingTop">5dip</item>
         <item name="android:paddingLeft">4dip</item> 
         <item name="android:paddingRight">4dip</item> 
           <item name="android:paddingBottom">1dip</item> 
               <item name="android:background">@android:drawable/bottom_bar</item> 
               
               
         </style>

 

就只有一张bottom_bar图片。

未来比较效果我重做了一张图片黄色的如图


android之buttonBar的设计--style的引用
 那么直接代码

setContentView(R.layout.popup_example);

 

然后就是R.layout.popup_example

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

    android:orientation="horizontal" 
    style="@android:style/ButtonBar"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
     android:id="@+id/l2"
    > 
  <Button android:id="@+id/b1"
          android:layout_alignParentLeft="true"
     android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:drawableLeft="@drawable/icon"
        android:text="hello"/>
    <Button android:id="@+id/b2"
     android:layout_width="120dip" 
     android:layout_alignParentRight="true"
        android:layout_height="wrap_content" 
        android:drawableLeft="@drawable/icon"
        android:maxLines="2"
        
        android:text="hello boy"/>
</RelativeLayout>
<RelativeLayout 

    android:orientation="horizontal" 
    style="@style/MyButtonBar"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    
    > 
  <Button android:id="@+id/b3"
          android:layout_alignParentLeft="true"
     android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:drawableLeft="@drawable/icon"
        android:text="hello"/>
    <Button android:id="@+id/b4"
     android:layout_width="120dip" 
     android:layout_alignParentRight="true"
        android:layout_height="wrap_content" 
        android:drawableLeft="@drawable/icon"
        android:maxLines="2"
        
        android:text="hello boy"/>
</RelativeLayout>
</LinearLayout>

 

自定义 style="@style/MyButtonBar"

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyButtonBar">
        <item name="android:paddingTop">5dip</item>
         <item name="android:paddingLeft">4dip</item> 
         <item name="android:paddingRight">4dip</item> 
           <item name="android:paddingBottom">1dip</item> 
               <item name="android:background">@drawable/a1</item> 
               
               
         </style>
</resources>

 

这个样式啥都没有该 就改了最后的图片呼呼很简单吧

关键要学会 怎么引用style

我在调试的时候style="style/MyButtonBar" 竟然不报错 只是没有效果 而

style="@style/MyButtonBar"
如果要引用系统的则
style="@android:style/ButtonBar"

你可能感兴趣的:(xml,android)