0

在 instagram 应用程序中,当图像不可用时,它会说

“点击重试”

当图像可用时,它会加载图像。

我的应用程序需要类似的东西,如果信息可用,它将信息加载到线性布局中,如果不可用,它什么也不返回,所以我的布局保持空白。

那么我如何添加像 instagram 这样的文本,比如“没有可用的信息”。

我尝试使用

机器人:提示

但这似乎不是一个好的选择。

4

2 回答 2

0

不知道你是如何设置的,但我认为这样的事情会起作用。让您的 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);
}
于 2013-08-05T21:46:59.277 回答
0

所以你会有你的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>
于 2013-08-05T22:34:25.837 回答