0

I have developed an app on eclipse that sets the wallpaper of the phone .The app is working fine but the wallpaper is blurred.It is an integral part of my project.I can't continue further without resolving this.

Here is the code

    MainActivity.java
    public class MainActivity extends Activity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            Button button =(Button) findViewById(R.id.button1);

            button.setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    startActivity(new Intent("com.example.backgroundapp.bakapp"));
                }
            });
        }

        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main, menu);
            return true;
        }

    }
The backapp java file
{
    bakapp.java
    public class bakapp extends Activity implements OnClickListener {
        ImageView display;
        int tophone;

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

            // to our activity to cover the whole screen
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                    WindowManager.LayoutParams.FLAG_FULLSCREEN);

            setContentView(R.layout.back);
            Button but = (Button) findViewById(R.id.setwallpaper);
            tophone = R.drawable.image4;
            but.setOnClickListener(this);
            display = (ImageView) findViewById(R.id.ivdisplay);
            ImageView image1 = (ImageView) findViewById(R.id.IVimage1);
            ImageView image2 = (ImageView) findViewById(R.id.IVimage2);
            ImageView image3 = (ImageView) findViewById(R.id.IVimage3);
            ImageView image4 = (ImageView) findViewById(R.id.IVimage4);
            ImageView image5 = (ImageView) findViewById(R.id.IVimage5);

            image1.setOnClickListener(this);
            image2.setOnClickListener(this);
            image3.setOnClickListener(this);
            image4.setOnClickListener(this);
            image5.setOnClickListener(this);

        }

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Toast var;
            switch (v.getId()) {
            case R.id.IVimage1:
                display.setImageResource(R.drawable.n1);
                var = Toast.makeText(bakapp.this, "image changed",
                        Toast.LENGTH_SHORT);

                var.show();

                tophone = R.drawable.n1;
                break;
            case R.id.IVimage2:
                display.setImageResource(R.drawable.n2);
                var = Toast.makeText(bakapp.this, "image changed",
                        Toast.LENGTH_SHORT);

                var.show();

                tophone = R.drawable.n3;
                break;
            case R.id.IVimage3:
                display.setImageResource(R.drawable.n4);
                var = Toast.makeText(bakapp.this, "image changed",
                        Toast.LENGTH_SHORT);

                var.show();

                tophone = R.drawable.n4;
                break;
            case R.id.IVimage4:
                display.setImageResource(R.drawable.n5);
                var = Toast.makeText(bakapp.this, "image changed",
                        Toast.LENGTH_SHORT);

                var.show();

                tophone = R.drawable.n5;
                break;
            case R.id.IVimage5:
                display.setImageResource(R.drawable.n6);
                var = Toast.makeText(bakapp.this, "image changed",
                        Toast.LENGTH_SHORT);

                var.show();

                tophone = R.drawable.n6;
                break;
            case R.id.setwallpaper:
                // to set a background we need to use bitmap
                InputStream is = getResources().openRawResource(tophone);
                // to phone is a variable that is updated everytime we click on an
                // ImageView to that imageview resource and by clicking the button
                // we set the phone background to that image.
                BitmapFactory.Options options = new BitmapFactory.Options();
                options.inSampleSize = 8;
                Bitmap bm = BitmapFactory.decodeStream(is,null,options);
                // decode inputstream is
                try {
                    getApplicationContext().setWallpaper(bm);
                    // to set the wallpaper of the phone background we need to ask
                    // permission from the user so add permission of background from
                    // manifest file

                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                var = Toast.makeText(bakapp.this, "Wallpaper image changed",
                        Toast.LENGTH_SHORT);

                var.show();

                break;
            }
        }

    }
The layouts are as follows
    main.xml
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Application to Change background picture of device"
            android:textSize="30dp" />

        <Button
            android:id="@+id/button1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="96dp"
            android:text="Click to launch" />

    </RelativeLayout>

    Layout for bakapp.java
    back.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/ivdisplay"
            android:layout_width="200dp"
            android:layout_height="200dp"
            android:layout_gravity="center"
            android:src="@drawable/image4" />
    "
        <Button
            android:id="@+id/setwallpaper"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="set image background" >
        </Button>

        <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/n1" />

                <ImageView
                    android:id="@+id/IVimage2"
                    android:layout_width="125dp"
                    android:layout_height="125dp"
                    android:padding="15dp"
                    android:src="@drawable/n2" />

                <ImageView
                    android:id="@+id/IVimage3"
                    android:layout_width="125dp"
                    android:layout_height="125dp"
                    android:padding="15dp"
                    android:src="@drawable/n3" />

                <ImageView
                    android:id="@+id/IVimage4"
                    android:layout_width="125dp"
                    android:layout_height="125dp"
                    android:padding="15dp"
                    android:src="@drawable/n4" />

                <ImageView
                    android:id="@+id/IVimage5"
                    android:layout_width="125dp"
                    android:layout_height="125dp"
                    android:padding="15dp"
                    android:src="@drawable/n5" />
            </LinearLayout>
        </HorizontalScrollView>

    </LinearLayout>
Cr7
  • 62
  • 8

0 Answers0