Android 方法和变量

Android 方法和变量,android,Android,再次询问有关我的代码的问题。它工作不正常,我在XML中调用了它们,但它们仍然不工作。代码如下:问题代码以粗体突出显示。我也在发布我的XML。Java代码在顶部,我的XML代码在底部 package app.com.example.android.shoutoutapp; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.g

再次询问有关我的代码的问题。它工作不正常,我在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>
package-app.com.example.android.shoutoutapp;
导入android.app.Activity;
导入android.content.Intent;
导入android.graphics.Bitmap;
导入android.graphics.BitmapFactory;
导入android.net.Uri;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.Button;
导入android.widget.ImageView;
导入android.widget.TextView;
导入android.R;
导入android。*;
导入java.io.FileNotFoundException;
公共类MainActivity扩展了活动{
TextView textTargetUri;
图像视图目标图像;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button buttonAddPhoto=(按钮)findViewById(R.id.add_photo);
textTargetUri=(TextView)findViewById(R.id.targeturi);
targetImage=(ImageView)findViewById(R.id.targetImage);
buttonAddPhoto.setOnClickListener(新建Button.OnClickListener()){
@凌驾
公共void onClick(视图arg0){
//TODO自动生成的方法存根
意向意向=新意向(意向.行动\u选择,
android.provider.MediaStore.Images.Media.EXTERNAL\u CONTENT\u URI);
startActivityForResult(意向,0);
}});
}
@凌驾
受保护的void onActivityResult(int请求代码、int结果代码、意图数据){
//TODO自动生成的方法存根
super.onActivityResult(请求代码、结果代码、数据);
if(resultCode==RESULT\u OK){
Uri targetUri=data.getData();
textTargetUri.setText(targetUri.toString());
位图;
试一试{
位图=BitmapFactory.decodeStream(getContentResolver().openInputStream(targetUri));
targetImage.setImageBitmap(位图);
}catch(filenotfounde异常){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
}
}
}

您的
ImageView
具有id
ImageView
而不是
targetimage

更改xml中的
ImageView
,如下所示

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


。他们的工作在**。我可以把它们做成红色。星星显示出问题所在。代码在开头。这是不可执行的,你不能像那样同时运行Java和XML代码。或者,不要在同一代码块中提供来自两个不同文件的示例代码,这可能就是您正在做的。从您的问题来看,不清楚这是编译时错误、运行时错误还是IDE错误(编译时)。请在单独的块中发布完整的java代码,然后任何人都可以帮助您解决问题。很可能是XML资源错误导致资源文件编译中断。或者您导入了错误的资源文件(有时人们导入android.R而不是自己的资源文件)。查看导入,确保看到“导入my.package.R;”