2016-07-20 4 views
-2

私は知っている方法はpickUpImageギャラリーから。しかし、同じコードは私の他のアプリケーションで動作しますが、私の新しいアプリケーションでは動作しません。強さの問題を選択している間にAndroidのギャラリーからの画像

public class RegisterActivity extends AppCompatActivity{ 

    Button upload_proof_button; 

    Bitmap bitmaps; 
    private static final int PICK_IMAGE = 100; 
    ImageView filename; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_register); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     filename = (ImageView) findViewById(R.id.filename_textveiw); 

     upload_proof_button = (Button)findViewById(R.id.upload_proof_button); 
     upload_proof_button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       Intent gallery = new Intent(Intent.ACTION_PICK, 
         android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI); 
       startActivityForResult(gallery, PICK_IMAGE); 
      } 
     }); 
    } 


    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 

     if (resultCode == RESULT_OK && requestCode == PICK_IMAGE) { 
      Uri imageUri = data.getData(); 

      try { 
       bitmaps = MediaStore.Images.Media.getBitmap(this.getContentResolver(), imageUri); 

       if(bitmaps == null){ 
        filename.setImageBitmap(bitmaps); 
       } 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 

     } 
    } 

} 

manifest.xmlファイルに書き込み権限があります。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

エラーLogcat:

7月20日06:16:10.401 12940から12940/com.example.softeng.jogifinal D/dalvikvm:GC_FOR_ALLOCは287K解放され、13%フリー3182K/3640K、2msのを一時停止し、 総2msの7月20日06:16:10.411 12940から12940/com.example.softeng.jogifinal I/dalvikvm:メソッド android.content.res.Resources.getDrawableを見つけることができませんでしたが、から参照しますメソッド android.support.v7.widget.ResourcesWrapper.getDrawable 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal W/dalvikvm: VFY:仮想メソッドを解決できません442: Landroid/content/res/Resources; .getDrawable (ILandroid/content/res /リソース$テーマ;)ランドドロイド/グラフィックス/描画可能/描画可能; 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal D/dalvikvm:VFY:オペコード0x6eを0x0002に置き換えます。07-20 06:16:10.411 12940-12940/com.example.softeng .jogifinal I/dalvikvm:16:メソッド android.support.v7.widget.ResourcesWrapper.getDrawableForDensity 7月20日 06から 参照 方法android.content.res.Resources.getDrawableForDensityを、見つけることができませんでした10.411 12940から12940/com.example.softeng.jogifinal W/dalvikvm: VFY:仮想メソッドを解決できません444: Landroid/content/res/Resources; .getDrawableForDensity (IILandroid/content/res/Resources $テーマ、)Landroid/graphics/drawable /描画可能; 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal D/dalvikvm:VFY:オペコード0x6eを0x0002に置き換えます。07-20 06:16:10.411 12940-12940/com.example.softeng .jogifinal E/dalvikvm: クラスのandroid.graphics.drawable.RippleDrawable 'が見つかりませんでした、 方法から android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering 7月20日06参照:16:10.411 12940から12940/com.example.softeng.jogifinal W/dalvikvm:VFY:instanceof 152 (Landroid/graphics/drawable/RippleDrawable;)を解決できません。 のLandroid/support/v7/widget/AppCompatImageHelper; 07-20 06:16:10.411 12940-12940/com.example.softeng.jogifinal D/dalvikvm:VFY:置き換え オペコード0x20 at 0x000c 07-20 06:16:10.721 12940-12940/com.example.softeng .jogifinal D/OpenGLRenderer: デバッグモードを有効にする0 07-20 06:16:14.441 12940-12940/com.example.softeng.jogifinal I/dalvikvm: メソッドを見つけられませんでしたandroid.content.Context.getColorStateList 方法 android.support.v7.content.res.AppCompatResources.getColorStateList 7月20日06:16:14.441 12940から12940/com.example.softeng.jogifinal W/dalvikvm:VFY:仮想メソッド287を解決することができません。 土地/コンテンツ/コンテキスト; .getColorStateList (I)土地/ cont ent/res/ColorStateList; 07-20 06:16:14.441 12940-12940/com.example.softeng.jogifinal D/dalvikvm:VFY:置き換え オペコード0x6e at 0x0006 07-20 06:16:15.731 12940-12940/com。example.softeng.jogifinal D/dalvikvm:GC_FOR_ALLOC 解放された270K、12%フリー3281K/3724K、一時停止3ms、合計3ms 07-20 06:15:41 12940-12940/com.example.softeng.jogifinal D/dalvikvm: GC_FOR_ALLOC 97K、14%無料3337K/3880K、一時停止1ms、合計2ms 07-20 06:16:15.741 12940-12940/com.example.softeng.jogifinal I/dalvikvm-heap:Grow heap(frag case) 5.65MBの場合5.106MB 割当07-20 06:16:15.751 12940-12948/com.example.softeng.jogifinal D/dalvikvm:GC_FOR_ALLOC 解放された< 1K、フリー5060K/5604K、一時停止5ms、合計10K 5ms

してください:

  1. 試してcleanプロジェクト。
  2. try Invalidate and caches
  3. Andriod Studioを再起動します。しかし、動作しない...どれヘルプが理解さ

..

+0

動作していないときにログに何かが存在するかどうかを確認できますか? – KunalK

+0

@KunalKはこの 'GC_FOR_ALLOCは286Kを解放し、13%は3281K/3740Kを解放し、2msを一時停止し、合計2msは影響を受けるかどうか? – Ironman

+0

いいえ警告またはエラーメッセージが表示されるはずです。 – KunalK

答えて

0

をあなたのビットマップはImageViewのにそれを設定するためのnullであるかどうかをチェック。これに変更してください:

if (bitmaps != null) { 
    filename.setImageBitmap(bitmaps); 
} else { 
    filename.setImageResource(R.drawable.default_image); 
} 
+0

ヘルプありがとうございました..働いています.. '=='の '!='の条件を '' = ''に変更するとうまくいきます。 – Ironman

+0

Hehe問題はありません。あとで言った:P –

+0

ええ。しかし、私は '条件'で見ることができません。 – Ironman

関連する問題