如何使用twitter4j.Status.isRetweet()方法

时间:2014-02-17 07:13:16

标签: java android twitter4j

我正在使用twitter4j库为Android创建一个Twitter客户端。

我希望客户端仅在列表视图中的某些项目上显示“true”。

然后我编码如下:

private class TweetAdapter extends ArrayAdapter<Status> {

    private LayoutInflater mInflater;

    public TweetAdapter(Context context) {
        super(context, android.R.layout.simple_list_item_1);
        mInflater = (LayoutInflater) context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        if (convertView == null) {
            convertView = mInflater.inflate(R.layout.list_item_tweet, null);
        }
        Status item = getItem(position);
        // setStatus(convertView, getItem(position));


        TextView name = (TextView) convertView.findViewById(R.id.name);
        name.setText(item.getUser().getName());

        TextView screenName = (TextView) convertView.findViewById(R.id.screen_name);
        screenName.setText("@" + item.getUser().getScreenName());

        TextView text = (TextView) convertView.findViewById(R.id.text);
        text.setText(item.getText());

        SimpleDateFormat sdf = new SimpleDateFormat("M/d(E) H:mm:ss");
        TextView time = (TextView) convertView.findViewById(R.id.time);
        time.setText(sdf.format(item.getCreatedAt().getTime()));

        SmartImageView icon = (SmartImageView) convertView.findViewById(R.id.icon);
        icon.setImageUrl(item.getUser().getProfileImageURL());


        if(item.isRetweet()){
            TextView rt = (TextView) convertView.findViewById(R.id.rted_by);
            rt.setText(String.valueOf(item.isRetweet()));
        }

        return convertView;
    }
}

令我惊讶的是,即使某些不是“转推”的物品,我也会得到额外的“真实”。

一旦我删除了如下所述的if语句,我就可以在适当的项目上获得适当数量的“true”或“false”。

//if(item.isRetweet()){
            TextView rt = (TextView) convertView.findViewById(R.id.rted_by);
            rt.setText(String.valueOf(item.isRetweet()));
//}

所以问题是if语句不能像我打算那样工作。

0 个答案:

没有答案