我有一个代码可以动态地将按钮和图像添加到 fragment 中。正在添加按钮,但未添加图像。
这是我的代码:
for(String f1 : f){
// For Each File Add a View or a button or something
LogUtil.d(TAG,"ocr override" + f1);
Button b = new Button (getActivity());
b.setId (i);
b.setLayoutParams(params2);
b.setText (f1);
b.setOnClickListener(this);
ImageView img_view = new ImageView(getContext());
img_view.setImageBitmap(getBitmapFromAsset("OcrSampleImages"+System.getProperty("file.separator")+f1));
img_view.setLayoutParams(params);
linearLayout.addView(b);
linearLayout.addView(img_view,params);
i++;
}
params 和 params2 定义如下:
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
LayoutParams params2 = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
这是模拟器上的输出:
这是我的 Assets 文件夹:
最佳答案
最好使用迭代策略..
首先,new ImageView(getContext());
-> new ImageView(**getActivity()**);
其次,如果你不知道问题出在哪里,那么最好阅读默认的可绘制图像
img_view.setImageResource(R.drawable.<any_dummy_image_from_drawable>);
代替
setImageBitmap()
如果您的虚拟图像加载正确,这意味着您的 View 是完美的并且在读取 Assets 时出现问题, 如果是这样,那么您可以将更多精力放在 Assets 阅读方面。
关于java - ImageView 未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37649547/