আজকে আমরা গত পর্বের activity_main.xml এ সেট করা ইমেজগুলো clickable একটিভ ইমেজ এ সেট করব।
প্রথমেই আমরা ImageView widget কে একটি variable, display দ্বারা globally ডিক্লিয়ার করব। তারপর onCreate মেথডের ভিতরে setContentView(R.layout.activity_main); নিচে display কে findViewById দ্বারা image1 কে চিনিয়ে দিব, তারপর ImageView দ্বারা casting করে দিব। ঠিক তেমনিভাবে অন্যান্য ইমেজগুলো কেও চিনিয়ে দেয়ার জন্য ImageView widget দ্বারা variable ডিক্লিয়ার করে Id দ্বারা চিনিয়ে দিতে হবে।
package com.coder_art.android9; import android.os.Bundle; import android.app.Activity; import android.view.KeyEvent.DispatcherState; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.ImageSwitcher; import android.widget.ImageView; import android.widget.TextView; public class MainActivity extends Activity implements OnClickListener { ImageView display; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); display = (ImageView) findViewById(R.id.imageView1); ImageView imageView1 = (ImageView) findViewById(R.id.imageView1); ImageView imageView2 = (ImageView) findViewById(R.id.imageView2); ImageView imageView3 = (ImageView) findViewById(R.id.imageView3); ImageView imageView4 = (ImageView) findViewById(R.id.imageView4); ImageView imageView5 = (ImageView) findViewById(R.id.imageView5); ImageView imageView6 = (ImageView) findViewById(R.id.imageView6); ImageView imageView7 = (ImageView) findViewById(R.id.imageView7); ImageView imageView8 = (ImageView) findViewById(R.id.imageView8); imageView1 .setOnClickListener(this); imageView2.setOnClickListener(this); imageView3.setOnClickListener(this); imageView4.setOnClickListener(this); imageView5.setOnClickListener(this); imageView6.setOnClickListener(this); imageView7.setOnClickListener(this); imageView8.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.imageView1: display.setImageResource(R.drawable.background_1); break; case R.id.imageView2: display.setImageResource(R.drawable.background_2); break; case R.id.imageView3: display.setImageResource(R.drawable.background_3); break; case R.id.imageView4: display.setImageResource(R.drawable.background_4); break; case R.id.imageView5: display.setImageResource(R.drawable.background_5); break; case R.id.imageView6: display.setImageResource(R.drawable.background_6); break; case R.id.imageView7: display.setImageResource(R.drawable.background_7); break; case R.id.imageView8: display.setImageResource(R.drawable.background_8); break; default: break; } } @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; } }
তারপর প্রত্যেক variable কে setOnClickListener দ্বারা active করে দিতে হবে। এখানে this দ্বারা এই activity কে নির্দেশ করা হয়েছে। এবং Activity কে implements করে দিতে হবে OnClickListener দ্বারা। এখন public class MainActivity তে error প্রদর্শন করলে, তার উপর hover করে add unimplemented method দ্বারা error কে fix করে দিতে হবে। তারপর public void onClick মেথডে switch case এ switch কে v.getId() দ্বারা ডিক্লিয়ার করে দিতে হবে। এবং case কে R.id.imageId দ্বারা প্রত্যেক ইমেজ কে চিনিয়ে দিতে হবে। এখানে ইমেজ clickable একটিভ করার জন্য display.setImageResource(R.drawable.background_1);
এভাবে প্রত্যেক ইমেজ কে সেট করে দিতে হবে। তারপর application টি রান করলে যে ইমেজ এর উপর click করবেন সেই ইমেজটিই active ইমেজ হিসেবে কাজ করবে। এই ছিল wallpaper অ্যাপ তৈরির আজকের দ্বিতীয় পর্ব।
এন্ড্রয়েড ডেভেলপমেন্ট এর সর্বশেষ পর্ব সম্পর্কে নোটিফিকেশান পেতে লাইক করুন ফেসবুকের এই পেইজে এ।
আমি নাঈম হায়দার ঋদ্ধি। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 76 টি টিউন ও 44 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 6 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
Computer ও Programming পছন্দ, আমার youtube channel https://www.youtube.com/channel/UCYKbAf2kXLgKav30hd3zDPQ . আমার ফেসবুক প্রোফাইল https://www.facebook.com/nayeem.riddhi