2016-09-09 2 views
1

В моем списке приложений приложений Android есть изображение. Образ изображения находится на другом макете. Я хочу изменить это изображение на другое с помощью кода. когда я запускаю программу с кодом его получаю ошибку ..»Android-список Просмотр изображения Ошибка?

Может кто-нибудь помочь мне найти ошибку спасибо youu ./

Я пытался ..

Bitmap bImag = BitmapFactory.decodeResource(this.getResources(), R.drawable.tick); 
       down.setImageBitmap(bImag); 

и это тоже

myImgView.setBackgroundResource(R.drawable.monkey); 

Мой XML-код .. (я использовал OnClick на ImageView)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 

    <TextView 
     android:id="@+id/Itemname" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="20sp" 
     android:layout_gravity="center" 
     android:text="asdas" 
     android:layout_weight="0.9" 
     android:paddingTop="5dp"/> 

    <ImageView 
     android:id="@+id/icon" 
     android:onClick="download" 
     android:layout_width="50dp" 
     android:layout_height="50dp" 
     android:gravity="right" 
     android:layout_gravity="center" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="5dp" 
     android:layout_marginTop="5dp" 
     android:src="@drawable/download" /> 

</LinearLayout> 

Java код ..

public void download(View view) { 
     String value = getIntent().getExtras().getString("id"); 
     if (value.equals("Pretham (2016)")) { 
      Intent i=new Intent(Song_List.this, MyService.class); 
      startService(i); 
      Toast.makeText(Song_List.this, "Downloading..........", Toast.LENGTH_SHORT).show(); 
      Bitmap bImag = BitmapFactory.decodeResource(this.getResources(), R.drawable.tick); 
      down.setImageBitmap(bImag); 
     }else{ 
      Toast.makeText(Song_List.this, "Downloaded Song.....", Toast.LENGTH_SHORT).show(); 
     } 

мой LogCat есть ..

Process: com.example.jithin.myapplication, PID: 1539 
java.lang.IllegalStateException: Could not execute method for android:onClick 
    at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293) 
    at android.view.View.performClick(View.java:5201) 
    at android.view.View$PerformClick.run(View.java:21163) 
    at android.os.Handler.handleCallback(Handler.java:746) 
    at android.os.Handler.dispatchMessage(Handler.java:95) 
+0

пост LogCat также –

+0

какие ошибки ?? пожалуйста уточнить – kgandroid

+0

** Intent намерения = getIntent(); String value = intent.getStringExtras ("id"); ** попробуйте вот так: –

ответ

0

ImageView имеет:

android:onClick="download"

работает только, если макет из деятельности setContentView() не из списка или фрагмента

Вам нужно добавить на адаптере:

ImageView img = findViewById(R.id.download); 
    img.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      //CODE on click 
     } 
    }); 

и удалить OnClick из XML

Смежные вопросы