Hello fellow programmers!
I am doing a tutorial but have ran into a snag that I cannot solve. When I set up the link of XML elements to Java like this:
Image1 = (ImageView) findViewById(R.id.ivImage1);
It does not recognize the id even though it is the exact one in the XML. ivImage1 ivImage2, and ivImage3 all don't work but the rest of the elements in the class do. What am I doing wrong?
Here is my Activity code:
package com.frostbytedev.addsub;
import java.io.IOException;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.ImageView;
public class Photo extends Activity implements OnClickListener {
Bitmap bmp;
ImageButton ib;
Button b;
ImageView iv, Image1, Image2, Image3, Image4;
Intent i;
final static int cameraData = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.photo);
initialize();
}
private void initialize() {
// TODO Auto-generated method stub
iv = (ImageView) findViewById(R.id.ivReturnedPic);
b = (Button) findViewById(R.id.bSetWall);
ib = (ImageButton) findViewById(R.id.ibTakePic);
Image1 = (ImageView) findById(R.id.ivImage1);
Image2 = (ImageView) findById(R.id.ivImage2);
Image3 = (ImageView) findById(R.id.ivImage3);
Image4 = (ImageView) findById(R.id.ivImage4);
b.setOnClickListener(this);
ib.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.bSetWall:
try {
getApplicationContext().setWallpaper(bmp);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
break;
case R.id.ibTakePic:
i= new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(i, cameraData);
break;
}//Closes Switch
}//Closes OnClick
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if(resultCode == RESULT_OK){
Bundle extras = data.getExtras();
bmp = (Bitmap) extras.get("data");
iv.setImageBitmap(bmp);
}
}//Closes Class
photo.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/ivReturnedPic"
android:layout_width="fill_parent"
android:layout_height="250dp"
android:layout_gravity="center"
android:src="@drawable/white" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="60dp"
android:orientation="horizontal"
android:weightSum="100">
<ImageButton
android:id="@+id/ibTakePic"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="78"
android:background="@drawable/camera" />
<Button
android:id="@+id/bSetWall"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="22"
android:text="Set as Wallpaper" />
</LinearLayout>
<HorizontalScrollView
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_gravity="center">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/ivImage1"
android:layout_width="125dp"
android:layout_height="125dp"
android:padding="15dp"
android:src="@drawable/stevenrulz" />
<ImageView
android:id="@+id/ivImage2"
android:layout_width="125dp"
android:layout_height="125dp"
android:padding="15dp"
android:src="@drawable/cat" />
<ImageView
android:id="@+id/ivImage3"
android:layout_width="125dp"
android:layout_height="125dp"
android:padding="15dp"
android:src="@drawable/bee" />
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
Thanks for the help!
Try cleaning the project from Project -> Clean
and build
it again.
If Build -> Clean project doesn't work for you, Do this -
Go to File -> Invalidate caches / Restart -> Invalidate and Restart
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With