【问题标题】:Can't identify int in startActivityForResult?无法识别 startActivityForResult 中的 int?
【发布时间】:2020-09-26 13:21:28
【问题描述】:

包 com.example.feelhut;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageButton;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;




public class editprofile extends AppCompatActivity {
    ImageButton proileimagebutton;
    private static final int ImageRequest=1;
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    proileimagebutton= findViewById(R.id.edit_profile);
    proileimagebutton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent();
            intent.setAction(Intent.ACTION_GET_CONTENT);
            intent.setType("imageeeeeee/");

ImageRequest 在 startActivityForResult 中显示错误。表示我无法在此处识别图像请求。

startActivityForResult(intent.ImageRequest);

        }
    });
    }

    }

【问题讨论】:

    标签: java android startactivityforresult


    【解决方案1】:
    public class editprofile extends AppCompatActivity {
        ImageButton proileimagebutton;
        private static final int ImageRequest=1;
        @Override
        protected void onCreate(@Nullable Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            //no content view? add like this setContentView(R.layout.yourViewLayout);
            proileimagebutton= findViewById(R.id.edit_profile);
            proileimagebutton.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent intent = new Intent();
                    intent.setAction(Intent.ACTION_GET_CONTENT);
                    intent.setType("image/*");
                    startActivityForResult(intent,ImageRequest);
    
                }
            });
        }
    
        @Override
        public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
            super.onActivityResult(requestCode, resultCode, data);
    
            if (requestCode == ImageRequest&& resultCode == RESULT_OK) {
                // your ImageView.setUri(data.getData();      
            }
        }
    }
    

    【讨论】:

      【解决方案2】:

      你需要在“public class editprofile extends AppCompatActivity”上面声明int。 代码应该是

      private ImageButton proileimagebutton;
      
      
      private static final int ImageRequest=1;
      

      公共类 editprofile 扩展 AppCompatActivity {

      @Override
      protected void onCreate(@Nullable Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
      proileimagebutton= findViewById(R.id.edit_profile);
      proileimagebutton.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              Intent intent = new Intent();
              intent.setAction(Intent.ACTION_GET_CONTENT);
              intent.setType("imageeeeeee/");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-11-16
        • 2017-06-29
        • 1970-01-01
        • 1970-01-01
        • 2019-01-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多