2015-06-23 38 views
0

再次詢問有關我的代碼的問題。它工作不正常,我用我的XML調用它們,但它們仍然不起作用。以下是代碼:問題代碼以粗體突出顯示。我也張貼我的XML。頂部的Java代碼和我的XML代碼位於底部。方法和變量

 package app.com.example.android.shoutoutapp; 

import android.app.Activity; 
import android.content.Intent; 
import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.net.Uri; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.ImageView; 
import android.widget.TextView; 
import android.R; 
import android.*; 
import java.io.FileNotFoundException; 

public class MainActivity extends Activity { 

    TextView textTargetUri; 
    ImageView targetImage; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Button buttonAddPhoto = (Button)findViewById(R.id.add_photo); 
     textTargetUri = (TextView)findViewById(R.id.targeturi); 
     targetImage = (ImageView)findViewById(R.id.targetimage); 

     buttonAddPhoto.setOnClickListener(new Button.OnClickListener(){ 

      @Override 
      public void onClick(View arg0) { 
       // TODO Auto-generated method stub 
       Intent intent = new Intent(Intent.ACTION_PICK, 
         android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
       startActivityForResult(intent, 0); 
      }}); 
    } 

    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     // TODO Auto-generated method stub 
     super.onActivityResult(requestCode, resultCode, data); 

     if (resultCode == RESULT_OK){ 
      Uri targetUri = data.getData(); 
      textTargetUri.setText(targetUri.toString()); 
      Bitmap bitmap; 
      try { 
       bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(targetUri)); 
       targetImage.setImageBitmap(bitmap); 
      } catch (FileNotFoundException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 
    } 
} 

<RelativeLayout> 
<ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 

     android:id="@+id/imageView" /> 




    <TextView 
      android:text= "Thot of The Day!" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textSize="60sp" 
      android:layout_centerHorizontal="true" 
      android:gravity="center" 
      android:id="@+id/text_shout_out" 



      /> 

     <Button 
      android:id="@+id/add_photo" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:text="Add Photo" 
      android:gravity="center" 
      android:layout_below="@+id/text_shout_out" 
      android:layout_alignParentRight="true" 
      android:layout_alignParentEnd="true" 
      android:layout_marginTop="131dp" 
      android:onClick="LoadImage"/> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/targeturi"/> 

    </RelativeLayout> 
+0

ATLEAST規定,究竟是不是在你的代碼工作。 – Aakash

+0

我有。他們在**。我可以讓它們變紅。星星表明出了什麼問題。代碼在開始。它沒有執行 – Tommy

+0

您不能像這樣一起運行Java和XML代碼。或者,不要在同一代碼塊中提供來自兩個不同文件的示例代碼,這可能是您正在做的。從你的問題來看,目前還不清楚這是一個編譯時間錯誤,運行時錯誤還是IDE錯誤(編譯時間)。 – Cookster

回答

2

ImageView具有ID imageView,而不是targetimage

更改ImageView在XML中,像這樣的

<ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/targetimage" />