以编程方式在 Android java 中显示类似 facebook messenger 的 UI
Posted
技术标签:
【中文标题】以编程方式在 Android java 中显示类似 facebook messenger 的 UI【英文标题】:Display UI like facebook messenger in Android java programatically 【发布时间】:2015-03-01 10:41:02 【问题描述】:图片
--
我想在上图中实现这样的效果
我必须遍历这个 json 数组来获取我所有的数据; 我的json数组中包含的数据例如
'img' : http:\\.....
'name' : XYZ
'msg' : xyz
'time' : abc
//this is where I am tring to append everything
final LinearLayout rl = (LinearLayout)main.findViewById(R.id.mainL);
for (int i = 0; i < json.length(); i++)
try
JSONObject c = json.getJSONObject(i);
//here components must be created and added to view
catch (JSONException e)
// TODO Auto-generated catch block
e.printStackTrace();
我只想知道您如何以编程方式设置视图样式(textview、imageview 等),如上图所示。 任何帮助将不胜感激
【问题讨论】:
是否有理由需要以编程方式创建视图?我会创建一个ListView
或RecyclerView
并在您的自定义适配器中的getView
中创建您的视图。
因为我从服务器获取数据,所以我不知道我需要创建多少列表视图,所以我需要创建一个循环 n 以编程方式进行! @JaredRummler 你有更好的主意吗?
我将首先解析 JSON 并将每个 JSONObject 加载到一个类中,然后将您创建的每个对象放入 ArrayList
。然后将 ArrayList
传递给您的自定义适配器,并通过 getItem(position)
获取您需要的信息。
在图片中叫这个妈妈___ing ass___le是我不想发布它的原因xD
【参考方案1】:
好的,您正在查看的图像实际上是一个 ListView
提供定制视图。
它是如何工作的?
您将需要继承 BaseAdapter
类。该子类将包含基础数据,在您的情况下,您将从网络服务器获得 JSON 格式的回复。
当调用BaseAdapter
子类的getView()
时,您可以扩展包含ImageView
和TextView
s 的布局以在屏幕上显示数据。
【讨论】:
我得到了一些东西,但你能提供一些代码让它更清晰吗? @lilchild以上是关于以编程方式在 Android java 中显示类似 facebook messenger 的 UI的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式打开 Android 6.0 (Marshmallow) 上特定应用的权限屏幕?