作者kiwatami (悠游自在)
看板AndroidDev
标题Re: [问题] ListView文字无法置中
时间Sat Oct 17 11:30:33 2015
我写了一篇完整的 RecyclerView 的教学文
使用置中的版型
网页好读版(部落格 有广告 不喜勿入)
http://goo.gl/dKRuo2
以下为纯文字版
-----
RecyclerView 是 Android 释出用以取代 ListView 的元件
他比 ListView 效能更好 资源运用更灵活
不过在初始化方面是稍微复杂了点
现在我们就来一步步介绍该怎麽加入 RecyclerView 并使用 SwipeRefreshLayout
实作向下滑动更新的功能
首先我们先来看看 xml layout 的部分
https://gist.github.com/anonymous/20d30ffec9053a037901
这时你会看到右方预览介面是空白的
http://imgur.com/GpaKU1t
这是正常的结果所以不用担心
接下来我们要新增 RecyclerView 里面的 Item Layout
并将内容置中
https://gist.github.com/anonymous/86cb7cd5909b3efbe3ff
看起来就会像这样
http://imgur.com/BUKQHO1
那麽介面完成了 现在就要开始程式码的部分
RecyclerView 需要一个 Adapter 配合
主要用途是 Item 的操作, 以及 layout 的载入
我们先来看 Adapter 该如何建立
https://gist.github.com/anonymous/ef561a617725ccd42a3e
这个部分应该没什麽问题
接下来我们来看该如何连结所有的 Layout 及 Adapter
并将 Item 读入 RecyclerView
https://gist.github.com/anonymous/62a3770a76b7d44a849a
到这里就完成了
本范例使用的虽然是 Fragment 但大致上使用方式使相同的
若要在直接在 Activity 中加入 RecyclerView 方法是一样的
但 Adapter 的建立就不需要分开在不同的地方
Fragment 是因为若不先在 OnCreate 时建立 Adapter
而在 OnCreateView 内建立的话会有问题
Log 会显示 RecyclerView 没有配对的 Adapter 将忽略载入
这种情况即使你有将物件加入 Adapter 也会呈现空白的资料
原因目前还不清楚 但若在 Activity 内就不会有这个问题
以下是在 Activity 内建立的范例
https://gist.github.com/anonymous/695142bd5fe58c7955f5
就这样罗
一开始可能稍嫌复杂, 但习惯後其实满方便的
同一个 Adapter 可以重复使用
写程式的效率也自然跟着变高了
以上就是这次落落长的教学文...
有问题再跟我说
我也初学没几个月
希望能帮上忙
你的问题的解法最简单的就是新增一个 Item 的 Layout
然後用 RelativeLayout 包起来并设定 TextView 置中
就像 itemLayout.xml 里面显示的那样(就是第二个程式码连结)
而我是习惯使用 RecyclerView 了
也没使用过 ListView
因为一开始学的时候网路上的教学文就说不推荐使用 ListView 了
时间许可不妨就参考使用 RecyclerView 吧
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.251.36.215
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1445052642.A.920.html
1F:推 brian7882287: 感谢 >"< 10/17 12:51
2F:推 keieykdx: 有心帮推 10/17 17:56
3F:推 z0furu: 有用给推!! 10/17 19:11
4F:推 kobe8112: 推一个 10/17 22:02
5F:推 silence5105: 帮推个後面是建议用 recyclerview 没错, 可以配合 10/22 03:03
6F:→ silence5105: card view 10/22 03:03