android ui 遇到的问题汇总
16lz
2021-01-26
1. 在 linearlayout 中如何让 textview 靠 left or right
首先,通过 weight = 1 让两个 textview 各占一半,然后,通过 android:gravity 设置 textview 的内容,靠左还是右
2. layout_gravity 和 gravity 的区别
layout_gravity 设置的是 layoutgravity 设置的是内容,
margin 是 layout
padding 是内容
有时候我们设置了一个 view 是 android:gravity=center 但是不在中间,可能是因为同时指定了 padding 的值
3. merge
只能用作根 root,并且没有 layout 的概念,例如:有个子的 layout 文件: sub.xml方式1:
<merge> <TextView /></merge>方式2:
<LinearLayout> <TextView /></LinearLayout>
在另一个 xml 中通过 include 的方式使用
<include android:id="@+id/main" layout="@layout/sub">
则方式一通过 findViewById() 会崩溃,方式2 不会。
方式1 通过如下方式可以解决
<FrameLayout android:id="@+id/main" <include layout="@layout/sub" /></FrameLayout>
4. list item 设置 margin 不起作用
如果一个 view 用来作为 list item 的 root view,然后想设置它的 margin 则不起作用,需要在内嵌一个 layout 才可以<LineartLayout android:margin="10dip" /> // 不起作用没有任何 margin 的效果
<LinearLayout> <LinearLayout android:margin="10dip" /> // 有 margin 的效果</LinearLayout>
5. 通过 Framelayout 来实现一个 view 覆盖在另一个 view 上面
此处要注意的是:最上面的 view 最后创建,否则即使设置了 top 也会被覆盖掉更多相关文章
- Android(安卓)Fragment与Fragment、Activity通信的方式的总结
- android 点击获取验证码显示倒计时并不可用
- 七 APPIUM Android(安卓)定位方式
- Android(安卓)Studio使用技巧
- Android(安卓)应用第一次运行时,引导页面的设置方法(只让程序Aciti
- android 学习四 加载图片
- Android开发经验谈之应用间数据共享
- Android用户界面 UI组件--TextView及其子类(三) EditView以及各
- android spinner自定义背景文字显示不全解决办法