Android入坑之路

2,127 阅读2分钟

#juejin.im/editor/guid…

#一、Android layout_margin 无效的解决办法

1、如果LinearLayout中使用Android:layout_marginRight不起作用,通过测试原来在android2.x中,如果一个控件中有android:layout_gravity属性,就会出现android:layout_marginRight没有应有的效果,而是把左边距加到右边距上去,直接去掉android:layout_gravity这个属性就能解决

2、如果是在RelativeLayout中不起作用,请在这个代码前加了一条android:layout_alignParentRight="true",就行

3、如果是ScrollView中的LinearLayout 中设置margin 类的属性无效,解决方法 LinearLayout中加android:layout_gravity="top"属性就ok,

4、如果是LineaerLayout放到scrollview或者RelativeLayou里面中layout_margin失效不起作用,解决方法在属性里面加入android:layout_gravity="top",大家注意跟1是不一样的,1是LinearLayout里面的控件,而这里是指LinearLayout在其他控件中的情况,请分清对待。

5、ListView里面子view layout_margin无效的解决办法,android:devider+android:deviderHeight属性

#二、Android控件显示和隐藏

   在安卓开发中,我们会遇到这样的情况,布局很类似,A布局比B布局多了几个控件,只需将其隐藏即可达到布局复用。

基本概念

   1、在xml文件中对控件可进行配置

   2、在Java代码中进行设置

   可见:

           android:visibility="visible";

           Java代码:view.setVisibility(View.VISIBLE);

   不可见:

              android:visibility="invisible";

              Java代码:view.setVisibility(View.INVISIBLE);

    隐藏:

            android:visibility="gone";

            Java代码:view.setVisibility(View.GONE);

注意:invisible--不显示,但保留所占的空间;visible--正常显示;gone:不显示,且不保留所占的空间

如,一个场景--点击button之后,该按钮进行显示

XML里:

android:visibility="visible"

代码里,如Button

btn.setVisibility(View.VISIBLE);

我在项目当中用到的是:

1、布局中设置控件为android:visibility

2、在程序中可用setVisibility();

3、对应的三个常量值为0、4、8

VISIBLE:0 可见的

INVISIBLE:4 不可见的,但还占着原来的空间

GONE:8 隐藏,不占用原来的布局空间

当用setVisibility();该方法设置控件隐藏或显示时,该方法内对应的取值为int类型,所以可取常量值

Android Q私有目录与公共目录文件的交互(读取,复制,保存等)——Pittkai blog.csdn.net/kai545/arti… blog.csdn.net/yehui928186…

refusing to merge unrelated histories(AS项目推送至码云出错) blog.csdn.net/pabebe/arti…

android保存png及gif到本地指定路径 blog.csdn.net/anwanfei/ar…

使用FastJson对JSON字符串、JSON对象及JavaBean之间的相互转换 blog.csdn.net/xuforeverlo…