zoukankan      html  css  js  c++  java
  • 解决某些手机RadioGroup中的RadioButton不居中(右移)问题

        最近一直在忙一个项目,页面的基本框架类似于QQ那样,有底部导航栏的,遂采用的是RadioButton来实现的。本来一直在我的模拟器上测试,页面展示是没啥问题的,效果图如下:


        可是,坑爹的事今天却发生了。 测试人员给我说,底部的导航栏图标文字右移,不居中,我的个擦,我一看,心中蹦出了一个鲜亮的词——尼玛,这是啥情况?!右移的图如下:


    看看,这就是那个坑爹的效果啊。当然,坑爹归坑爹,还得解决啊,遂求助于度娘,发现,居然还有不少人遇到过这个问题,好心人给出了解决方案,只需要在每个RadioButton中,添加一个属性android:paddingLeft="0dp",或者是 android:background="@color/transparent" ,两个方案都可以ok的。

    下面给出解决后的布局代码:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="@drawable/activity_bg"
            android:orientation="vertical">
    
            <FrameLayout
                android:id="@+id/container"
                android:layout_width="match_parent"
                android:layout_height="0dip"
                android:layout_weight="1.0"></FrameLayout>
    
            <RelativeLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal">
    
                <RadioGroup
                    android:id="@+id/radiogroup"
                    android:layout_width="match_parent"
                    android:layout_height="50dip"
                    android:layout_gravity="bottom"
                    android:background="#ffffff"
                    android:gravity="center_vertical"
                    android:orientation="horizontal">
    
                    <RadioButton
                        style="@style/navigation_style"
                        android:checked="true"
                        android:drawablePadding="3dp"
                        android:drawableTop="@drawable/selector_main_bottom_tab_first"
                        android:paddingLeft="0dp"
                        android:text="首页" />
    
                    <RadioButton
                        style="@style/navigation_style"
                        android:checked="false"
                        android:drawablePadding="3dp"
                        android:drawableTop="@drawable/selector_main_bottom_tab_second"
                        android:paddingLeft="0dp"
                        android:text="唱歌" />
    
                    <RadioButton
                        style="@style/navigation_style"
                        android:checked="false"
                        android:drawablePadding="3dp"
                        android:drawableTop="@drawable/selector_main_bottom_tab_third"
                        android:paddingLeft="0dp"
                        android:text="跳舞" />
    
                    <RadioButton
                        style="@style/navigation_style"
                        android:checked="false"
                        android:drawablePadding="3dp"
                        android:drawableTop="@drawable/selector_main_bottom_tab_forth"
                        android:paddingLeft="0dp"
                        android:text="我的" />
                </RadioGroup>
            </RelativeLayout>
        </LinearLayout>
    
    </RelativeLayout>

  • 相关阅读:
    分享一款颜色神器ColorSchemer Studio
    只要你用atom修改后保存代码文件的时候,你在chrome上的页面就会自动刷新。
    十六进制颜色代码
    WordPress窗体化侧边栏
    QQ输入法中英文标点符号快速切换
    Android ListView的item背景色设置以及item点击无响应等相关问题
    Android内存优化(使用SparseArray和ArrayMap代替HashMap)
    [Fatal Error] :3:13: Open quote is expected for attribute "{1}" associated with an element type "id".
    java模式—装饰者模式
    Java模式—适配器模式
  • 原文地址:https://www.cnblogs.com/hehe520/p/6329982.html
Copyright © 2011-2022 走看看