2013-02-07 7 views
13
this is the first canvas. 


<?xml version="1.0" encoding="utf-8"?> 
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:orientation="vertical" 
       android:background="@drawable/background_linen" > 

       <ScrollView 
        android:id="@+id/scrollView1" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" > 



        <TableLayout 
         android:layout_width="fill_parent" 
         android:layout_height="wrap_content" > 

         <TableRow 
          android:id="@+id/TableRow01" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <TextView 
           android:id="@+id/TextView03" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:text=" " 
           android:textAppearance="?android:attr/textAppearanceLarge" /> 
         </TableRow> 


         <TableRow 
          android:id="@+id/tableRow1" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 





          <ImageView 
           android:id="@+id/img1" 
           android:layout_width="wrap_content" 
           android:layout_height="150dp" 
           android:src="@drawable/girbaud1front" /> 

         </TableRow> 

         <TableRow 
          android:id="@+id/tableRow2" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <TextView 
           android:id="@+id/TextView01" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:text=" " 
           android:textAppearance="?android:attr/textAppearanceLarge" /> 
         </TableRow> 

         <TableRow 
          android:id="@+id/tableRow3" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 




          <ImageView 
           android:id="@+id/img2" 
           android:layout_width="320dp" 
           android:layout_height="150dp" 
           android:src="@drawable/girbaud4front" /> 

         </TableRow> 

         <TableRow 
          android:id="@+id/tableRow4" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <TextView 
           android:id="@+id/textView1" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:text=" " 
           android:textAppearance="?android:attr/textAppearanceLarge" /> 
         </TableRow> 

         <TableRow 
          android:id="@+id/tableRow5" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 




          <ImageView 
           android:id="@+id/img3" 
           android:layout_width="320dp" 
           android:layout_height="150dp" 
           android:src="@drawable/girbaud2front" /> 

         </TableRow> 


         <TableRow 
          android:id="@+id/TableRow6" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <TextView 
           android:id="@+id/TextView02" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:text=" " 
           android:textAppearance="?android:attr/textAppearanceLarge" /> 
         </TableRow> 

         <TableRow 
          android:id="@+id/TableRow7" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 




          <ImageView 
           android:id="@+id/img4" 
           android:layout_width="320dp" 
           android:layout_height="150dp" 
           android:src="@drawable/girbaud3front" /> 

         </TableRow> 

         <TableRow 
          android:id="@+id/TableRow02" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <TextView 
           android:id="@+id/TextView04" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           android:text=" " 
           android:textAppearance="?android:attr/textAppearanceLarge" /> 
         </TableRow> 

        </TableLayout> 
       </ScrollView> 

      </RelativeLayout> 

la seconda tela che cambiamento dell'immagine accadrà è questosetImageResource non funziona

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:id="@+id/Layout01" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" > 




       <ImageView 
        android:id="@+id/ImageView01" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentBottom="true" 
        android:layout_alignParentLeft="true" 
        android:layout_alignParentRight="true" 
        android:layout_alignParentTop="true" 
        android:layout_marginBottom="10dp" 
        android:layout_marginTop="10dp" 
        android:layout_marginRight="10dp" 
        android:layout_marginLeft="10dp" 
        android:scaleType="fitXY" 
        android:src="@drawable/girbaud1front" /> 

       <TextView 
        android:id="@+id/txt1" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentBottom="true" 
        android:layout_alignParentLeft="true" 
        android:layout_marginBottom="62dp" 
        android:layout_marginLeft="48dp" 
        android:textAppearance="?android:attr/textAppearanceLarge" 
        android:textColor="#000000" /> 

      </RelativeLayout> 

di file java

  package com.example.flip3d; 

       import android.app.Activity; 
      import android.content.Intent; 
      import android.graphics.drawable.Drawable; 
      import android.os.Bundle; 
      import android.view.View; 
      import android.widget.ImageView; 
      import android.widget.Toast; 


      public class Cards extends Activity { 

       ImageView img1; 
       ImageView img2; 
       ImageView image; 

       @Override 
       protected void onCreate(Bundle savedInstanceState) { 
        // TODO Auto-generated method stub 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.cards); 

        img1 =(ImageView) findViewById(R.id.img1); 
        img2 =(ImageView) findViewById(R.id.img2); 
        image =(ImageView) findViewById(R.id.ImageView01); 

        img1.setOnClickListener(new View.OnClickListener() { 

         public void onClick(View arg0) { 

          image.setImageResource(R.drawable.myfirstimage); 
          Intent startyou = new Intent("com.example.flip3d.FLIP3D"); 
          startActivity(startyou); 
         } 
        }); 

        img2.setOnClickListener(new View.OnClickListener() { 

         public void onClick(View view) { 





          image.setImageResource(R.drawable.may2ndimage); 

          Toast.makeText(Cards.this, "Card Selected", Toast.LENGTH_SHORT).show(); 

          Intent startyou = new Intent("com.example.flip3d.FLIP3D"); 
          startActivity(startyou); 
         } 
        }); 




         } 


       } 

http://i820.photobucket.com/albums/zz130/lestah23/untitled-1_zps33fa9be5.png mio messaggio logcat.

quando eseguo questo codice sul mio telefono. si è verificato un errore. e quando controllo il logcat dice. che ho errori in setImageResource();

cosa devo fare? im un biginner nella programmazione Android :(

grazie in anticipo

+0

Puoi aggiungere alla tua domanda l'errore in logcat. – NaviRamyle

+0

image.setImageResource (R.drawable.may2ndimage); dovrebbe funzionare. Hai pulito il tuo progetto? Progetto -> Clean –

+0

Are ImageView img1, img2 e image, sono tutti in schede Layout ?? –

risposta

19

aggiornato @

Simon Schubertanswer sembra corretto.

In alternativa, è possibile anche accedere al metodo getDrawable dalle risorse.

Resources resources = getResources(); 
image.setImageDrawable(resources.getDrawable(R.drawable.myfirstimage)); 
+3

non succede nulla – Lestr1992

+0

bello Ok per vedere che hai trovato una soluzione, come si è risolto Cosa? era l'errore? –

+0

+1, Lavorando per me. Grazie! –

1

provare questo,

int id = getResources().getIdentifier("yourpackagename:drawable/" + StringGenerated, null, null); 

Ciò restituirà l'id del drawable si desidera accedere ... quindi è possibile impostare l'immagine nel ImageView facendo seguito

imageview.setImageResource(id); 
+0

com.example.flip3d: drawable/è questo che intendi? – Lestr1992

+0

modifico la mia risposta – jlopez

+0

accadere nulla :( – Lestr1992

4

è anche possibile chiamare setImageDrawable:

image.setImageDrawable(getResources().getDrawable(R.drawable.myfirstimage)); 
+0

accadere nulla :( – Lestr1992

+0

sta ancora mostrando errore nel logcat? – DcodeChef

+0

sì sempre avviene. – Lestr1992

2
  1. Ok ho visto il tuo cattura di immagini logcat. Molto bene.

  2. Verificare se sono presenti i seguenti ID nel proprio R.layout.cards.

    img1 = (ImageView) findViewById(R.id.img1); 
    img2 = (ImageView) findViewById(R.id.img2); 
    image = (ImageView) findViewById(R.id.ImageView01); 
    

Sembra che una delle tue immagini non e 'possibile. Che cosa è esattamente la linea 55?

  1. Il codice dovrebbe funzionare. Credo che ci sia un cattivo di riferimento nel vostro R. Pulire il vostro progetto e ricreare il R.

Eclipse: ProgettoClean

Android Studio: costruireClean Progetto

+0

correttamente notato + 1 – RobinHood

+0

Dare Logcat con eccezione? Come? :) – Lestr1992

+0

Passare a DDMS -> Logcat -> selezionare la riga di errore "che ho errore in setImageResource();" e premere ctrl + c -> modificare la risposta e premere ctrl + v .. o scrivilo. :) –

0

Ho avuto lo stesso problema di te. In realtà, scopro che tutte le mie immagini sono state inserite in/res/drawable. avevo poche immagini che erano molto grandi quindi ho dovuto spostarle in/res/drawable-hdpi o xhdpi.Un altro trucco è ridurli. Spero che questo possa aiutare qualcuno. Cheers

3

getResources().getDrawable è deprecato.

Si può provare ContextCompat.getDrawable:

image.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.myimage));

0

provare questo codice:

Resources resources = getResources(); 
image.setImageDrawable(resources.getDrawable(R.drawable.myfirstimage)); 

1 ° linea risolverà il problema.