在 instagram 应用程序中,当图像不可用时,它会说
“点击重试”
当图像可用时,它会加载图像。
我的应用程序需要类似的东西,如果信息可用,它将信息加载到线性布局中,如果不可用,它什么也不返回,所以我的布局保持空白。
那么我如何添加像 instagram 这样的文本,比如“没有可用的信息”。
我尝试使用
机器人:提示
但这似乎不是一个好的选择。
在 instagram 应用程序中,当图像不可用时,它会说
“点击重试”
当图像可用时,它会加载图像。
我的应用程序需要类似的东西,如果信息可用,它将信息加载到线性布局中,如果不可用,它什么也不返回,所以我的布局保持空白。
那么我如何添加像 instagram 这样的文本,比如“没有可用的信息”。
我尝试使用
机器人:提示
但这似乎不是一个好的选择。
不知道你是如何设置的,但我认为这样的事情会起作用。让您的 ImageView 和 TextView 填充相同的空间,然后根据图像的存在切换哪个可见,哪个不可见。希望这可以帮助
布局:
<RelativeLayout
... >
<ImageView
...
/>
<TextView
...
/>
</RelativeLayout>
逻辑:
if(isImageAvail){
iv.setVisibility(View.VISIBLE);
tv.setVisibility(View.GONE);
}else{
iv.setVisibility(View.GONE);
tv.setVisibility(View.VISIBLE);
}
所以你会有你的drawable...
Drawable imageDrawable = codeToGetYourImage;
TextView errorTxt = (TextView)findViewById(R.id.your_text_id);
ImageView imageView = (ImageView)findViewById(R.id.your_image_id);
if(imageDrawable == null){
imageView.setBackgroundDrawable(imageDrawable);
} else {
imageView.setVisibility(View.GONE);
errorTxt.setVisibility(View.VISIBLE);
}
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
android:id="@+id/your_text_id"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sorry, image cannot be displayed"
android:id="@+id/your_image_id"/>
</LinearLayout>