我是一名历史老师,在尝试为我的课程创建“总统事实”应用程序时具有最少的编码经验。我已经观看/阅读了多个教程,但我似乎无法成功创建一个简单的自定义列表视图,我可以在其中编辑文本大小和文本颜色。
老实说,这就是我所需要的。列表视图实际上允许我自定义它。除了在列表中显示文本外,我不需要它做任何其他事情。
我觉得代码显然很容易,但我完全失去了,我想在本周末为我的学生完成申请。
任何简单的教程链接或代码都将非常感激。非常感谢你!
编辑:我知道如何创建项目并填充常规列表视图。我遇到的唯一麻烦是能够编辑文本外观。再次感谢!
答案 0 :(得分:0)
您需要实现抽象BaseAdapter类。例如:
public class FeedAdapter extends BaseAdapter {
private ArrayList<FeedItem> items;
private LayoutInflater layoutInflater;
FeedAdapter(Context context, ArrayList<FeedItem> list, int bgColor){
items = list;
layoutInflater = LayoutInflater.from(context);
}
@Override
public int getCount() {
return items.size();
}
@Override
public FeedItem getItem(int index) {
return items.get(index);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row;
if (null == convertView) {
row = layoutInflater.inflate(R.layout.romanblack_feed_item, null);
} else {
row = convertView;
}
TextView title = (TextView) row.findViewById(R.id.romanblack_rss_title);
TextView description = (TextView) row.findViewById(R.id.romanblack_rss_description);
TextView pubdate = (TextView) row.findViewById(R.id.romanblack_rss_pubdate);
String titleString = items.get(position).getTitle();
title.setText(titleString);
String descString = items.get(position).getAnounce(70);
description.setText(descString);
pubdate.setText(items.get(position).getPubdate(""));
return row;
}
}
答案 1 :(得分:0)
您应该为列表视图使用适配器,并在该适配器中为自定义布局充气。此布局将用于列表视图的每个项目。在该布局中,您可以进行任何所需的更改。
编辑:看看this tutorial
答案 2 :(得分:0)
要设置视图样式,请转到值目录并编辑或如果不存在,请创建styles.xml。 在那里,您可以为视图属性定义标准值,例如
<style name="TextStyleNormal" parent="@android:style/TextAppearance.Medium">
<item name="android:textSize">@dimen/TextSizeNormal</item>
<item name="android:gravity">center</item>
<item name="android:background">@null</item>
<item name="android:layout_margin">4dp</item>
<item name="android:shadowDx">2</item>
<item name="android:textStyle">bold</item>
<item name="android:shadowDy">2</item>
<item name="android:shadowRadius">2</item>
<item name="android:layout_gravity">center</item>
</style>
然后在您的视图xml定义中,只需使用
将该样式添加到所需的视图中style="@style/TextStyleNormal"
当然,您可以将任何这些属性直接添加到视图中。