我使用def find_element(p,n):
for count, elm in enumerate(p): # p is a list or sequence
if elm == n # maybe 'is' is better as '=='
return count
return -1 # however, returning None is more Pythonic
和ListFragment
使用以下ArrayAdapter
list_view.xml
在我的<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="200dp"/>
我使用Adapter.getview
加载图片:
picasso
这是@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
if (null == convertView) {
convertView = inflater.inflate(R.layout.list_view, parent, false);
}
Picasso
.with(context)
.load("http://i.imgur.com/rFLNqWI.jpg")
.fit()
.into((ImageView) convertView);
return convertView;
}
类中由onActivityCreated
扩展的Fragment
方法:
ListFragment
上面的代码给了我一个 TestAdapter adapt = new TestAdapter(getActivity().getApplicationContext(), R.layout.list_view, pictures);
setListAdapter(adapt);
,我可以在其中看到从listview
库加载的图片。如何在列表视图中picasso
加载的text
上添加image
和image
?像这样穿:
答案 0 :(得分:0)
您可以实现毕加索Transformation
,然后使用位图,然后使用Canvas
基元在位图顶部绘制/渲染文本并返回最终位图。
另一种方法是使用带有3个子视图的RelativeLayout
:ImageView
延伸到其父级(RelativeLayout),使其成为整体背景;然后是TextView
用于您的文字,最后是ImageView
用于您的图标。
答案 1 :(得分:0)
像这样创建list_view.xml
<Relative layout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="200dp"/>
<EditText
android:layout_width="wrap_content"
android:layout_alignParentLeft="true"
android:text="Type your text"
android:layout_alignParentBottom="true"
android:layout_margin="20dp"
android:layout_height="200dp"/>
</Relative>
答案 2 :(得分:0)
您可以使用ViewHolder设置TextView和图像,然后将它与picasso一起使用。
这是代码段。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
ViewHolder holder;
if (row == null) {
LayoutInflater inflater = ((Activity) mContext).getLayoutInflater();
row = inflater.inflate(layoutResourceId, parent, false);
holder = new ViewHolder();
holder.titleTextView = (TextView) row.findViewById(R.id.grid_item_title);
holder.imageView = (ImageView) row.findViewById(R.id.grid_item_image);
row.setTag(holder);
} else {
holder = (ViewHolder) row.getTag();
}
GridItem item = mGridData.get(position);
holder.titleTextView.setText(Html.fromHtml(item.getTitle()));
Picasso.with(mContext).load(item.getImage()).into(holder.imageView);
return row;
}
有关详细信息,请参阅 http://javatechig.com/android/download-and-display-image-in-android-gridview