无法获得asmack所有用户 [英] Unable to get all user in asmack
问题描述
我开发上asmack LIB的Android基地聊天应用。我创建1个用户和在好友列表中添加3的朋友。当我使用名册显示好友列表。我不能在好友列表中的所有用户,才刚刚1的用户。我的code位置:
公共无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.tab_set);
TextView中的TextView =新的TextView(本);
的setContentView(TextView的); 名册名册= Controller.getInstance()connection.getRoster()。
收集和LT; RosterEntry>条目= roster.getEntries(); 对于(RosterEntry R:项)
{
textview.setText(r.getName());
}
感谢你的答案,这是非常有用的。我还有一个问题。如何显示好友列表的ListView控件在android系统?我试图把它在数组中,但它不能正常工作。
公共无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.tab_set); 字符串的好友; 名册名册= Controller.getInstance()connection.getRoster()。
收集和LT; RosterEntry>条目= roster.getEntries(); 对于(RosterEntry R:项)
{ 好友= textview.getText()+ r.getName();
。Controller.getInstance()值=新的String [] {}哥们;
}
ArrayAdapter<串GT;适配器=新ArrayAdapter<串GT;(这一点,
android.R.layout.simple_list_item_1,Controller.getInstance()的值)。
setListAdapter(适配器);
您只是在你的TextView的1好友,因为你正在改变每个迭代的文本。
试着这么做textview.setText(textview.getText()+ r.getName());或添加新的TextView为每个好友
I am developing chat app on Android base on asmack lib. I create 1 user and add 3 friend in buddy list. When I use roster to display buddy list. I can't get all user in buddy list, just 1 user only. My code here:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab_set);
TextView textview = new TextView(this);
setContentView(textview);
Roster roster = Controller.getInstance().connection.getRoster();
Collection<RosterEntry> entries = roster.getEntries();
for(RosterEntry r:entries)
{
textview.setText(r.getName());
}
Thank for your answer, it is very useful. I have another question. How to display buddy list as ListView in android ? I try to put it in the array but it not work.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab_set);
String buddy;
Roster roster = Controller.getInstance().connection.getRoster();
Collection<RosterEntry> entries = roster.getEntries();
for(RosterEntry r:entries)
{
buddy = textview.getText() + r.getName();
Controller.getInstance().values = new String[]{buddy};
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, Controller.getInstance().values);
setListAdapter(adapter);
You are just having one buddy in your TextView because you are changing the text for each iteration.
Try something like textview.setText(textview.getText() + r.getName()); or add a new TextView for each buddy
这篇关于无法获得asmack所有用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!