simpleadapter明明有数据为什么不显示

李元静
HarmonyOS领域优质创作者
博客专家认证
2014-06-24 03:22:57
主程序
package com.example.eaglemin;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.sina.weibo.sdk.auth.Oauth2AccessToken;
import com.sina.weibo.sdk.exception.WeiboException;
import com.sina.weibo.sdk.net.RequestListener;
import com.sina.weibo.sdk.utils.LogUtil;

import android.app.Activity;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.text.TextUtils;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;

public class LoginActivity extends Activity {
private static final String TAG = LoginActivity.class.getName();
private TextView text = null;
/** UI 元素:ListView */
private ListView mylist = null;;
/** 当前 Token 信息 */
private Oauth2AccessToken mAccessToken;
/** 用于获取微博信息流等操作的API */
private StatusesAPI mStatusesAPI;

private List<Map<String, String>> list = new ArrayList<Map<String, String>>();

private SimpleAdapter adapter = null;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
super.setContentView(R.layout.login_main);
// 获取当前已保存过的 Token
mAccessToken = AccessTokenKeeper.readAccessToken(this);
// 对statusAPI实例化
mStatusesAPI = new StatusesAPI(mAccessToken);
this.mylist = (ListView) super.findViewById(R.id.list);
if (mAccessToken != null && mAccessToken.isSessionValid()) {
this.mStatusesAPI.friendsTimeline(0L, 0L, 1, 1, false, 0, false,
mListener);
this.adapter = new SimpleAdapter(this, this.list, R.layout.honme,
new String[] { "name", "date", "content" }, new int[] {
R.id.name, R.id.date, R.id.content });
this.mylist.setAdapter(this.adapter);
}
}

/**
* 微博 OpenAPI 回调接口。
*/
private RequestListener mListener = new RequestListener() {
@Override
public void onComplete(String response) {
if (!TextUtils.isEmpty(response)) {
LogUtil.i(TAG, response);
if (response.startsWith("{\"statuses\"")) {
// 调用 StatusList#parse 解析字符串成微博列表对象
// 调用 StatusList#parse 解析字符串成微博列表对象
StatusList statuses = StatusList.parse(response);
if (statuses != null && statuses.total_number > 0) {
Toast.makeText(LoginActivity.this,
"获取微博信息流成功, 条数: " + statuses.statusList.size(),
Toast.LENGTH_LONG).show();
}
for (int i = 0; i < statuses.statusList.size(); i++) {
Map<String, String> map = new HashMap<String, String>();
Status status = statuses.statusList.get(i);
User user = status.user;// 获得用户数据
String text = status.text;// 获得微薄信息
// Drawable head =
// Tools.getDrawableFormUrl(user.profile_image_url);//
// 获得用户头像
String date = status.created_at;// 获得微薄发送时间
String name = user.screen_name;// 获得用户姓名
// map.put("head", String.valueOf(head));
map.put("name", name);
map.put("date", date);
map.put("content", text);
LoginActivity.this.list.add(map);
}
} else if (response.startsWith("{\"created_at\"")) {
// 调用 Status#parse 解析字符串成微博对象
Status status = Status.parse(response);
Toast.makeText(LoginActivity.this,
"发送一送微博成功, id = " + status.id, Toast.LENGTH_LONG)
.show();
} else {
Toast.makeText(LoginActivity.this, response,
Toast.LENGTH_LONG).show();
}
}
}

@Override
public void onWeiboException(WeiboException e) {
LogUtil.e(TAG, e.getMessage());
ErrorInfo info = ErrorInfo.parse(e.getMessage());
Toast.makeText(LoginActivity.this, info.toString(),
Toast.LENGTH_LONG).show();
}
};

}
主程序配置文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>

</LinearLayout>
list配置文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >


<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">

<ImageView
android:id="@+id/head"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">

<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>


<TextView
android:id="@+id/content"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
明明读取到了数据 并且存储到map中也添加到list中
为什么屏幕上没有任何数据一片空白
...全文
315 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80,361

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧