android image.setImageResource(..)导致按钮上的文本消失

时间:2012-06-27 21:48:29

标签: android android-layout

我的xml文件中的TableLayout中定义了一个按钮和一个图像对象:

    <Button
                    android:id="@+id/buttonNext"
                    android:layout_width="100dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="0.99"
                    android:gravity="center"
                    android:padding="1sp"
                    android:text="@string/buttonNext"/>
    <ImageView
                    android:id="@+id/ImageView02"
                    android:layout_width="100dp"
                    android:layout_height="fill_parent"
                    android:layout_weight="0.33" 
                    android:src="@drawable/sixthstring"
                    android:contentDescription="@string/chart_description"/>

有一个OnClickListener挂钩到下一个按钮,一切正常。

我为imageView创建了一个OnClickListener并输入以下代码:

  imgChart.setOnClickListener(onChartClick);

。 。

  private OnClickListener onChartClick = new OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            imgChart.setImageResource(R.drawable.newPngImage);
        }
     };

该应用效果很好,即使我单击图像并检索新图像。但是,如果手机休眠然后返回,或者如果我单击菜单按钮(两者都导致重绘?) next 按钮的文本消失(imageView中的图像)很好,按钮本身仍然存在) - 很奇怪。

如果我注释掉setImageResource方法,它一切正常。

2 个答案:

答案 0 :(得分:3)

与Tony有完全相同的问题。 我改用“setImageDrawable”,一切都在他们的位置上,完美无缺!

答案 1 :(得分:0)

使用setBackgroundResource(id)代替setImageResource(id)