এটি মূল পোস্টে প্রদত্ত কোডের সর্বাধিক গুরুত্বপূর্ণ অংশ।
Button one = (Button) this.findViewById(R.id.button1);
final MediaPlayer mp = MediaPlayer.create(this, R.raw.soho);
one.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
mp.start();
}
});
ধাপে ধাপে এটি ব্যাখ্যা করার জন্য:
Button one = (Button) this.findViewById(R.id.button1);
প্রথমে শব্দটি বাজানোর জন্য ব্যবহৃত বোতামটির সূচনা হয়। আমাদের যে বোতামটি প্রয়োজন তা পাওয়ার জন্য findViewById
আমরা ক্রিয়াকলাপটি , এটি নির্ধারিত আইডিটি পাস করে (এই উদাহরণের ক্ষেত্রে R.id.button1
:) ব্যবহার করি। আমরা এটিরূপে এটি Button
.ালাই করেছিলাম যাতে এটি পরিবর্তনশীল one
যেটিকে আমরা আরম্ভ করছি তা এটি নির্ধারণ করা সহজ । এই উত্তর কীভাবে এই কাজ করে তা আরও ব্যাখ্যা করা। এটি কীভাবে কাজ করে তার একটি সংক্ষিপ্ত অন্তর্দৃষ্টি দেয়।
final MediaPlayer mp = MediaPlayer.create(this, R.raw.soho);
এটি কীভাবে আরম্ভ করা যায় MediaPlayer
। মিডিয়াপ্লেয়ার স্ট্যাটিক ফ্যাক্টরি পদ্ধতি ডিজাইনের প্যাটার্ন অনুসরণ করে । একটি উদাহরণ পাওয়ার জন্য, আমরা এর create()
পদ্ধতিটি কল করি এবং এটিকে প্রসঙ্গে এবং আমরা যে সাউন্ডটি খেলতে চাই তার রিসোর্স আইডি পাস করি R.raw.soho
। আমরা এটি হিসাবে ঘোষণা final
। কেন আমরা এখানে এটি করি সে সম্পর্কে জন স্কিট একটি দুর্দান্ত ব্যাখ্যা প্রদান করেছিল ।
one.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
//code
}
});
অবশেষে, আমরা আমাদের পূর্ববর্তী আরম্ভকৃত বোতামটি কী করবে তা সেট করি। একটি শব্দ বাটন ক্লিক করুন! এটি করার জন্য, আমরা OnClickListener
আমাদের বোতামটি সেট করে রেখেছি one
। ভিতরে কেবলমাত্র একটি পদ্ধতি onClick()
রয়েছে , যাতে ক্লিকে বাটনটি কী নির্দেশনা দেয় তা অন্তর্ভুক্ত রয়েছে ।
public void onClick(View v) {
mp.start();
}
শব্দটি বাজানোর জন্য, আমরা মিডিয়াপ্লেয়ারের start()
পদ্ধতিটিকে কল করি । এই পদ্ধতিটি শব্দের প্লেব্যাক শুরু করে।
সেখানে, আপনি এখন অ্যান্ড্রয়েডে বোতাম ক্লিকের শব্দ করতে পারেন!
বোনাস অংশ:
ধন্যবাদ নীচে মন্তব্যে উল্লিখিত ধন্যবাদ ল্যাঙ্গুস্টেন গুস্টেল! , এবং অ্যান্ড্রয়েড বিকাশকারী রেফারেন্সে প্রস্তাবিত হিসাবে , release()
রিসোর্সগুলি মুক্ত করার জন্য পদ্ধতিটি কল করা গুরুত্বপূর্ণ যা আর ব্যবহার করা হবে না। সাধারণত, এটি করা হয়ে গেলে শব্দটি বাজানো শেষ হয়ে যায়। এটা করার জন্য, আমরা একটি অ্যাড OnCompletionListener
আমাদের কাছে mp
যেমন:
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
//code
}
});
onCompletion
পদ্ধতির অভ্যন্তরে , আমরা এটির মতো প্রকাশ করি :
public void onCompletion(MediaPlayer mp) {
mp.release();
}
এটি বাস্তবায়নের আরও সুস্পষ্ট উপায় রয়েছে । উদাহরণস্বরূপ, আপনি মিডিয়াপ্লেয়ারকে একটি শ্রেণি পরিবর্তনশীল করতে পারেন এবং এর লাইফসাইকেলের পাশাপাশি এটি ব্যবহার করে Fragment
বা Activity
এটি ব্যবহার করে handle তবে এটি অন্য প্রশ্নের জন্য একটি বিষয়। এই উত্তরের সুযোগটি ছোট রাখতে, অ্যান্ড্রয়েডের বোতামে ক্লিক করে কীভাবে সাউন্ড প্লে করা যায় তা চিত্রিত করার জন্য আমি এটি লিখেছিলাম ।
আসল পোস্ট
প্রথম। আপনার বক্তব্যগুলি একটি ব্লকের ভিতরে রাখা উচিত এবং এই ক্ষেত্রে অনক্রিয়েট পদ্ধতি।
দ্বিতীয়ত। আপনি পরিবর্তনশীল হিসাবে বোতাম সক্রিয়া এক , তাহলে আপনি একটি পরিবর্তনশীল ব্যবহৃত শূন্য এবং একটি অসম্পূর্ণ onClickListener তার onClickListener সেট। ভেরিয়েবল ব্যবহার এক setOnClickListener জন্য।
তৃতীয়ত, অনক্লিকের ভিতরে শব্দটি চালানোর জন্য যুক্তি রাখুন।
সংক্ষেপে:
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class BasicScreenActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_basic_screen);
Button one = (Button)this.findViewById(R.id.button1);
final MediaPlayer mp = MediaPlayer.create(this, R.raw.soho);
one.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
mp.start();
}
});
}
}
MusicManager.getInstance().play(this, R.raw.my_sound);
। : যদি তাই হয়, এই লাইব্রেরি করার জন্য আপনাকে হতে পারে github.com/delight-im/Android-Audio