安卓高手之路之图形系统【5】安卓ListView和EditText配合使用时的注意事项。

阅读更多

ListView实现滚动和布局时的注意实现:

1.如何实现自动定位到底部:

android:stackFromBottom="true"

这样ListView就可以实现从底向上增长。

android:transcriptMode="alwaysScroll"

ListView自动定位到最新的哪一条,在这里为底部。

 

2.在垂直布局的情况下。

在布局ListView的时候,一般情况是放在LinearLayout中来控制ListView的长度。

在默认情况下:

ListView如果想设置Fill_Parent,由于某种原因LinearLayout又必须设置为Fill_Parent.

这样就有一个问题:

ListView 就会覆盖掉整个LinearLayout,以至于后面的LinearLayout的子View无法显示。

 

解决的办法是LinearLayout优先从底部开始布局

android:gravity="bottom"

这样,布局的时候就优先布局最下面的View。然后ListView顶多就只能覆盖到顶部。

如果这个时候,顶端还有一些布局。那么就可以布局在LinearLayout的上面。

总而言之,有ListView的布局时,优先考虑其他View的布局,最后再考虑ListView。

 

3. 关于输入的时候,输入法覆盖输入框的解决方法。

1.

使用以下方法可以让输入法直接顶住当前的window。而不需要设置scrollView。

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN |
WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

2.默认情况下仅仅顶上EditText控件。使得输入框下面的内容都看不到。

 

3.如果scrollView如果包含了一个edit框。就会顶住scrollView,可以实现部分顶上去的效果。

 

你可能感兴趣的:(安卓,listView,输入法,窗口,图形系统)