如何始终在顶部制作视图?

时间:2014-02-28 07:37:16

标签: android always-on-top android-background

我有TextView并且它在图像上。单击按钮时,TextView的背景颜色会发生变化,但图像不会消失。例如;

我的TextView开头:

enter image description here

当我点击按钮时:

enter image description here

4 个答案:

答案 0 :(得分:1)

如果您只想使用一个TextView来执行此操作,则可能无法执行此操作。因此,我建议您使用FrameLayout执行此操作。你可以写下你的布局如下。

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#FFFFFF" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="" />

</FrameLayout>

如果您想更改TextView背后的颜色,请更改ImageView背景,如下所示...

ImageView mageView view = (ImageView) findViewById(R.id.image);
view.setBackgroundColor(Color.BLUE);

答案 1 :(得分:1)

如果它必须是TextView和ImageView,您还可以将其包装在FrameLayout(它应该只包含一个子节点)中。 FrameLayout会将所有包含子元素的元素放在同一个“地方”,因此get重叠。

或者当您需要更多元素时,您还可以使用RelativeLayout并为元素提供相同的布局规则(例如,所有居中)。

答案 2 :(得分:0)

您应该使用ImageView而不是TextView,即:

public void onClick(View v){
  imageView.setBackgroundColor(Color.GREEN);
}

答案 3 :(得分:0)

ImageButton对你来说是更好的选择。如你所说,图像源将是明星。然后点击你改变背景。如果想在此

中设置文字
android:drawableTop="@drawable/any_drawable"
android:text="@string/any_text"