如何让用户知道,ImageView是可点击的

时间:2014-11-29 09:47:57

标签: android imageview

我有一个可以点击的ImageView(见下图)。当用户点击ImageView时,他会被重定向到网站。这一切都运行良好。

我的问题是,如何让用户知道,他可以点击图片,如何使这个功能可见?

我可以在图片下添加文字,但那不是,我想要的。我想要一些小图标或窗口(如对话框),可以关闭。

谢谢!

Image

4 个答案:

答案 0 :(得分:0)

您可以通过以下方式查看:

imageViewObject.isClickable();

答案 1 :(得分:0)

当ImageView显示时,您可以设置一个小手指/手形图标的动画,以指示该元素是可点击的。

像这样:http://cmsresources.windowsphone.com/windowsphone/en-us/How-to/wp7/block/gettingstarted-concept-tap-and-hold-gesture.png

或者您可以使用渐变和阴影来为图像提供按钮外观。

答案 2 :(得分:0)

所以我搜索并找到了this。这是@kgandroid建议。

我添加了一些代码:

private FrameLayout mFrame;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    mFrame = new FrameLayout(this);
    mFrame.addView(LayoutInflater.from(getBaseContext()).inflate(R.layout.activity_single_list_view, null));
    setContentView(mFrame);

    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
    boolean overlayShown = settings.getBoolean("overlayShown", false);
    if(!overlayShown){
        setupHelpOverlay();
    }
    ...
}

private void setupHelpOverlay(){

    final View tutView = LayoutInflater.from(getBaseContext()).inflate(R.layout.activity_detail_overlay, null);
    if(mFrame != null){
        mFrame.addView(tutView);
    }

    // We need an Editor object to make preference changes.
    // All objects are from android.context.Context
    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
    SharedPreferences.Editor editor = settings.edit();
    editor.putBoolean("overlayShown", true);

    // Commit the edits!
    editor.commit();

    Button btnDismiss = (Button) tutView.findViewById(R.id.button_overlay);
    btnDismiss.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v){
            mFrame.removeView(tutView);
        }
    });
}

和activity_deatil_overlay.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/transparent_gray" >

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:textSize="20sp"
        android:gravity="center"
        android:textColor="@color/white"
        android:text="@string/overlay_text"
        android:paddingBottom="10dp" />

    <View
        android:id="@+id/textView1"
        android:layout_width="1dp"
        android:layout_height="1dp"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true" />

    <Button
        android:id="@+id/button_overlay"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:text="@string/overlay_button"
        android:textColor="@color/white"
        android:paddingTop="10dp" />

</RelativeLayout>

在第一次启动时,它显示帮助覆盖。

Image

答案 3 :(得分:0)

您可以在图像周围放置一个条形图,并在按下图像时更改其颜色。所以它看起来像一个按钮。