我正在使用Horizontal ScrollView来获取像侧面导航这样的脸谱
像这样:
但是如何在菜单中的Event项旁边显示“2”?
在我的应用程序中,我使用ViewUtil类来获取此菜单:
public class ViewUtils {
private ViewUtils() {
}
public static void setViewWidths(View view, View[] views) {
int w = view.getWidth();
int h = view.getHeight();
for (int i = 0; i < views.length; i++) {
View v = views[i];
v.layout((i + 1) * w, 0, (i + 2) * w, h);
printView("view[" + i + "]", v);
}
}
public static void printView(String msg, View v) {
System.out.println(msg + "=" + v);
if (null == v) {
return;
}
System.out.print("[" + v.getLeft());
System.out.print(", " + v.getTop());
System.out.print(", w=" + v.getWidth());
System.out.println(", h=" + v.getHeight() + "]");
System.out.println("mw=" + v.getMeasuredWidth() + ", mh="
+ v.getMeasuredHeight());
System.out.println("scroll [" + v.getScrollX() + "," + v.getScrollY()
+ "]");
}
public static void initListView(Context context, ListView listView,
String prefix, int numItems, int layout) {
// By using setAdpater method in listview we an add string array in
// list.
String[] arr = new String[numItems];
arr[0] = "Feed";
arr[1] = "Friends";
arr[2] = "Notifications";
arr[3] = "Feedback";
arr[4] = "Logout";
listView.setAdapter(new ArrayAdapter<String>(context, layout, arr));
}
}
并在Activity:
中设置适配器 ViewUtils.initListView(this, myListView, "Menu ", 5,
android.R.layout.simple_list_item_1);
我的“通知”文本是“通知n”之类的内容,其中n与上图中的“2”类似。我尝试使用Spannable String但我无法将Spannable String设置为字符串数组“arr”
谢谢
答案 0 :(得分:0)
我假设这些类别(新闻Feed,消息,...)是ListView
的项目
此外,为了显示“2”,我假设你需要一个自定义适配器。
在这种情况下,您只需要在行XML文件中添加TextView
,并在自定义适配器的getView()
方法中设置适当的值,或者,如果要创建TextView programaticaly in getView()
方法。