我在点击图片时尝试显示菜单。 这是我的full_screen_image.xml。我希望在点击@ + id / photo_menu时显示。
<ImageView
android:contentDescription="verter"
android:id="@+id/photo_menu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_more_vert_black_30dp"
android:tint="@android:color/white"
android:layout_marginTop="6dp"
android:layout_marginEnd="5dp"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"/>
</RelativeLayout>
这是menu_photo.xml。
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/savePhoto"
android:title="Kaydet" />
<item android:id="@+id/sharePhoto"
android:title="Paylaş" />
</menu>
这是fullScreenImageActivity.java:
package com.example.ahmetbesli.circles;
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
public class FullScreenImageActivity extends AppCompatActivity {
private ImageView arrowBack;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_full_screen_image);
arrowBack = (ImageView) findViewById(R.id.arrow_back);
arrowBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
ImageView fullScreenImageView = (ImageView) findViewById(R.id.fullScreenImageView);
Intent callingActivityIntent = getIntent();
if (callingActivityIntent != null) {
Uri imageUri = callingActivityIntent.getData();
if (imageUri != null && fullScreenImageView != null) {
Glide.with(this)
.load(imageUri)
.into(fullScreenImageView);
}
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_photo,menu);
return true;
}
}
我无法理解如何连接该图像和菜单。谢谢你的帮助...
答案 0 :(得分:1)
为图像设置点击监听器,并在该图像视图的onclick方法中根据您的要求创建以下4个实体中的任何一个。
您的用例中有很多选项,其中有两个选项。
1.Toast(仅显示消息无点击事件)
2.SnackBar(在一段时间后自我解散,如果您希望用户通过点击操作快速响应,则更喜欢这个)
3.使用AlertDialog
4.Dialog Fragment
并且在上述两种方法(3&amp; 4)中,您可以引用单击事件的菜单项或描述您自己的对话框布局,并在这些布局中为单击事件定义按钮。
创建步骤文档:Android Dialogs
Dialog提供更多功能并保持在那里直到用户关闭它,而不像吐司那样在一段时间后解散,如果不采取任何行动。