无法将图片加载到片段视图中。
无法将图片加载到片段视图中。
我有一个片段,应该用Picasso创建的ImageView来填充背景。
public class Fragment1 extends SherlockFragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Context c = getActivity().getApplicationContext(); View myFragmentView = inflater.inflate(R.layout.home, container, false); TextView text = (TextView) myFragmentView.findViewById(R.id.text); ImageView imageView = (ImageView) myFragmentView.findViewById(R.id.image); String url = ModalScreens.byId(1).getBackgroundImagePath(); Picasso.with(c).load(url).fit().into(imageView); return myFragmentView; } }
我无法弄清楚我做错了什么,但是图片无法加载。
问题的出现原因可能是加载本地资源而不是网络资源。如果是前者的情况,你可以像下面这样加载它:
StackOverflow showing image View from local disk
如果不是,并且你正在加载网络图片,那么可能有各种问题,以下是一些建议的故障排除方法:
- 你是否添加了以下权限?
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
- 链接是否有效(如adavis所建议的)?没有前后空格等。你可以通过以下方式进行测试:
Log.wtf("Testing valid URL", "|"+url+"|")
- 图片是否太大?如果是,可能会返回null。
- ImageView是否正确设置显示?你可以通过将其初始设置为某个图片来确认,例如在你的ImageView的布局xml中添加以下代码:
android:src="/large
解决方法:
1. 如果加载的是本地资源,可以按照上述链接中的代码示例进行加载。
2. 如果加载的是网络图片,可以按照以下步骤进行故障排除:
- 确保已添加网络权限:<uses-permission android:name="android.permission.INTERNET"></uses-permission>
- 检查链接是否有效,可以通过打印链接进行测试:Log.wtf("Testing valid URL", "|"+url+"|")
- 检查图片是否过大,如果是,可能会返回null,可以根据链接中的解决方法进行处理。
- 确认ImageView是否正确设置显示,可以通过将其初始设置为某个图片来确认。
通过以上步骤进行故障排除,应该能够解决无法使用Picasso加载图片到Fragment视图的问题。