我正在尝试制作一个图像+标题对的网格,用户将能够通过拖放重新排列。为此,我使用 DraggableGridView - https://github.com/thquinn/DraggableGridView。
虽然我可以显示 TextViews 和 ImageViews 并重新排列它们,但当我尝试将它们连接到一个布局中时,一切都会停止显示。
因此,在使用图像和标题解析 XML 之后,它可以工作:
for(ImagePair pair : pairs){
tv = new TextView(this);
tv.setText(pair.getText());
URL imageURL = new URL(pair.getURL());
Bitmap bmp = BitmapFactory.decodeStream(imageURL.openConnection().getInputStream());
imv = new ImageView(this);
imv.setImageBitmap(bmp);
dgv.addView(tv);
dgv.addView(imv);
它显示一个文本和图像网格,但它们没有配对 - 您可以用图像等切换文本的位置。
当我尝试插入包含 Image+ 文本的布局时:
for(ImagePair pair : pairs){
Bitmap bmp = BitmapFactory.decodeStream(imageURL.openConnection().getInputStream());
LayoutInflater li = getLayoutInflater();
View v = li.inflate(R.layout.image, null);
TextView txtv = (TextView)v.findViewById(R.id.ltext);
txtv.setText(pair.getText());
ImageView iv = (ImageView)v.findViewById(R.id.limage);
iv.setImageBitmap(bmp);
dgv.addView(v);
什么都没有显示。我可以通过执行显示任何单个视图
this.setContentView(v);
它将正确显示图像+标题对,但尝试将它们插入网格会导致黑屏,尽管网格报告存在 9 个孩子。
我正在使用的布局:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TableRow android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/limage"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ImageView>
</TableRow>
<TableRow android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/ltext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView"
android:gravity="center_horizontal"
android:textColorHighlight="#656565">
</TextView>
</TableRow>
</TableLayout>