Android 有覆盖问题吗

Android 有覆盖问题吗,android,Android,我正在编写一个android活动的代码,该活动将以网格视图显示手机上存储的图像缩略图。选择图片后,会弹出一个自定义对话框。此对话框在图像视图中显示更大版本的图像,以及一个“取消”按钮,用于将用户引导回图片采集显示,以及一个“选择”按钮,用于启动下一个活动。当我在Cancel.setOnClickListener方法中放置重写时,编译器会说这是一个错误,并建议我将其删除。当我删除它时,编译器再次抱怨说需要重写。有人能帮我吗?任何帮助都将不胜感激 package com.picturechoicea

我正在编写一个android活动的代码,该活动将以网格视图显示手机上存储的图像缩略图。选择图片后,会弹出一个自定义对话框。此对话框在图像视图中显示更大版本的图像,以及一个“取消”按钮,用于将用户引导回图片采集显示,以及一个“选择”按钮,用于启动下一个活动。当我在Cancel.setOnClickListener方法中放置重写时,编译器会说这是一个错误,并建议我将其删除。当我删除它时,编译器再次抱怨说需要重写。有人能帮我吗?任何帮助都将不胜感激

package com.picturechoiceactivity;

import android.app.Activity;
import android.app.Dialog;
import android.os.Bundle;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.AdapterView;
import android.widget.ImageView;
import android.widget.Toast;
import android.provider.MediaStore;
import android.provider.MediaStore.Images.Thumbnails;
import android.net.Uri;
import android.widget.AdapterView.OnItemClickListener;



public class MainActivity extends Activity {
    public Cursor myImageCursor;
    public int columnNumber;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        String[] imageIDs = new String[]{MediaStore.Images.Thumbnails.IMAGE_ID};

        Uri myImagesSource = MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI;


        String[] projection = {
                MediaStore.Images.ImageColumns._ID,  // The columns we want
                MediaStore.Images.Thumbnails.IMAGE_ID,  
                MediaStore.Images.Thumbnails.KIND };
        String selection = MediaStore.Images.Thumbnails.KIND + "="  + // Select only mini's
        MediaStore.Images.Thumbnails.MINI_KIND;

        myImageCursor = this.managedQuery(myImagesSource, projection, selection, null, null);


        if (myImageCursor == null)
        {
            columnNumber = myImageCursor.getColumnIndexOrThrow(MediaStore.Images.Media._ID);

            GridView PhoneImageView = (GridView)findViewById(R.id.imageview);
            PhoneImageView.setAdapter(new ImageAdapter(this));

            PhoneImageView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                public void onItemClick(AdapterView<?> parent, View v,
                        int position, long id) {
                    String[] data = { MediaStore.Images.Media.DATA };

                    final Cursor  viewImageCursor = managedQuery(
                            MediaStore.Images.Media.EXTERNAL_CONTENT_URI, data,
                            null, null, MediaStore.Images.Thumbnails._ID );
                    final int imageColumnIndex = viewImageCursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
                    viewImageCursor.moveToPosition(position);
                    viewImageCursor.moveToFirst();
                    final String filepath = viewImageCursor.getString(imageColumnIndex);
                    Toast.makeText(MainActivity.this, filepath, Toast.LENGTH_LONG).show();

                    Bitmap yourSelectedImage = BitmapFactory.decodeFile(filepath);
                       final Dialog dialog = new Dialog(MainActivity.this);
                       dialog.setContentView(R.layout.dialog);
                       dialog.setTitle("Picture in full-view");
                       dialog.setCancelable(true);


                       ImageView image = (ImageView) dialog.findViewById(R.id.imagev);

                       image.setImageBitmap(yourSelectedImage);


                       Button cancel = (Button) dialog.findViewById(R.id.selectimage);

                       cancel.setOnClickListener(new OnClickListener() {
                          @Override
                           public void onClick(View v) /*error shown here*/ {

                              dialog.dismiss();
                           }
                       });

                       Button select = (Button) dialog.findViewById(R.id.cancelselection);
                       select.setOnClickListener(new OnClickListener() {
                           public void onClick(View v) {
                            //String i = viewImageCursor.getString(imageColumnIndex);
                            //System.gc();
                            Intent intent = new Intent(getApplicationContext(), CategoryActivity.class);
                            intent.putExtra("filename", filepath);
                            startActivity(intent);

                           }
                       }); 
                       dialog.show();

                    }
                }
            );
        }
        else
        {
            Toast.makeText(MainActivity.this, "Gallery is empty.", Toast.LENGTH_LONG).show();
        }

    }       
}
package com.picturechoiceactivity;
导入android.app.Activity;
导入android.app.Dialog;
导入android.os.Bundle;
导入android.content.Context;
导入android.content.Intent;
导入android.database.Cursor;
导入android.graphics.Bitmap;
导入android.graphics.BitmapFactory;
导入android.view.view;
导入android.view.view.OnClickListener;
导入android.view.ViewGroup;
导入android.widget.BaseAdapter;
导入android.widget.Button;
导入android.widget.GridView;
导入android.widget.AdapterView;
导入android.widget.ImageView;
导入android.widget.Toast;
导入android.provider.MediaStore;
导入android.provider.MediaStore.Images.Thumbnails;
导入android.net.Uri;
导入android.widget.AdapterView.OnItemClickListener;
公共类MainActivity扩展了活动{
公共游标myImageCursor;
公共电话号码;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String[]ImageId=新字符串[]{MediaStore.Images.Thumbnails.IMAGE\u ID};
Uri myImagesSource=MediaStore.Images.Thumbnails.EXTERNAL\u CONTENT\u Uri;
字符串[]投影={
MediaStore.Images.ImageColumns.\u ID,//我们需要的列
MediaStore.Images.Thumbnails.IMAGE\u ID,
MediaStore.Images.Thumbnails.KIND};
字符串选择=MediaStore.Images.Thumbnails.KIND+“=”+//仅选择迷你
MediaStore.Images.Thumbnails.MINI_KIND;
myImageCursor=this.managedQuery(myImagesSource,projection,selection,null,null);
如果(myImageCursor==null)
{
columnNumber=myImageCursor.getColumnIndexOrThrow(MediaStore.Images.Media.\u ID);
GridView PhoneImageView=(GridView)findViewById(R.id.imageview);
setAdapter(新的ImageAdapter(this));
PhoneImageView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
public void onItemClick(AdapterView父视图、视图v、,
内部位置,长id){
字符串[]数据={MediaStore.Images.Media.data};
最终游标viewImageCursor=managedQuery(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,数据,
null,null,MediaStore.Images.Thumbnails.\u ID);
final int-imageColumnIndex=viewImageCursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
viewImageCursor.moveToPosition(位置);
viewImageCursor.moveToFirst();
最终字符串文件路径=viewImageCursor.getString(imageColumnIndex);
Toast.makeText(MainActivity.this,filepath,Toast.LENGTH_LONG.show();
位图您选择的edimage=BitmapFactory.decodeFile(文件路径);
最终对话框=新对话框(MainActivity.this);
setContentView(R.layout.dialog);
dialog.setTitle(“全景图片”);
对话框。可设置可取消(true);
ImageView image=(ImageView)dialog.findViewById(R.id.imagev);
设置图像位图(您选择的图像);
按钮取消=(按钮)对话框。findViewById(R.id.selectimage);
cancel.setOnClickListener(新的OnClickListener(){
@凌驾
public void onClick(视图v)/*此处显示错误*/{
dialog.dismise();
}
});
按钮选择=(按钮)对话框。findViewById(R.id.cancelselection);
select.setOnClickListener(新的OnClickListener(){
公共void onClick(视图v){
//String i=viewImageCursor.getString(imageColumnIndex);
//gc();
Intent Intent=新的Intent(getApplicationContext(),CategoryActivity.class);
intent.putExtra(“文件名”,文件路径);
星触觉(意向);
}
}); 
dialog.show();
}
}
);
}
其他的
{
Toast.makeText(MainActivity.this,“图库为空”,Toast.LENGTH_LONG.show();
}
}       
}

@Override
对于Java 6中开始的接口,请确保使用正确的源目标和JDK进行编译

如果您在没有覆盖的情况下遇到错误,那么听起来您好像有拼写错误<代码>@覆盖始终是可选的