انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
اجرای چندین صوت در یک لیست ویو (در برنامه نویسی اندروید)

اجرای چندین صوت در یک لیست ویو (در برنامه نویسی اندروید)

#8
با سلام.خیلی ممنونم از جواب کاملی که دادین.یک مشکل:اکتیویتی اصلی من یک لیست ویو هست ولی اکتیویتی صوت من یک لیست ویو نیست که بدین صورت [font] [/font] mp=MediaPlayer.create(getApplicationContext(), music[position]); مقدار را دریافت کنم.

کد اکتیویتی صوت:

کد پی‌اچ‌پی:
package com.kelidetan.customlistview;

import android.app.Activity;
import android.content.Context;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Handler;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.TextView;

public class 
Sotactivity extends Activity implements OnClickListener {
    
    SeekBar seek_bar
;
    Button play_buttonpause_button;
    MediaPlayer mediaPlayer;
    TextView text_shown;
    Handler seekHandler = new Handler();

    @Override
    protected void onCreate
(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.sot);
        
        Bundle extras 
getIntent().getExtras();
        if (extras != null) {
             String my_key_number extras.getString("key_number");
             String my_message "you pressed the item number " my_key_number " in ListView";
             TextView tv = (TextViewfindViewById(R.id.textView1);
             tv.setText(my_message);
    }
            
        getInit
();
        seekUpdation();
    }


    

    
public void getInit() {  
        seek_bar 
= (SeekBarfindViewById(R.id.seek_bar);
        play_button = (ButtonfindViewById(R.id.play_button);
        pause_button = (ButtonfindViewById(R.id.pause_button);
        text_shown = (TextViewfindViewById(R.id.text_shown);
        play_button.setOnClickListener(this);
        pause_button.setOnClickListener(this);
        mediaPlayer MediaPlayer.create(thisR.raw.asd);
   
        
        seek_bar
.setMax(mediaPlayer.getDuration());
    }

    Runnable run = new Runnable() {

        @Override
        
public void run() {
            seekUpdation();
        }
    };

    public void seekUpdation() {

        seek_bar.setProgress(mediaPlayer.getCurrentPosition());
        seekHandler.postDelayed(run1000);
        seek_bar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
            
            
@Override
            public void onStopTrackingTouch
(SeekBar seek_bar) {
                // TODO Auto-generated method stub
                
            
}
            
            
@Override
            public void onStartTrackingTouch
(SeekBar seek_bar) {
                // TODO Auto-generated method stub
                
            
}
            
            
@Override
            public void onProgressChanged
(SeekBar seek_barint progressboolean fromUser) {
                if(fromUser){ 
                    mediaPlayer
.seekTo(progress); 
                    seek_bar
.setProgress(progress);
                }
                
            
}
        });
    }

    @Override
    
public void onClick(View view) {
        switch (view.getId()) {
        case R.id.play_button:
            text_shown.setText("Playing...");
            mediaPlayer.start();
            break;
        case R.id.pause_button:
            mediaPlayer.pause();
            text_shown.setText("Paused...");
        }
    }
    
    
public void onProgressChanged(SeekBar seekBarint progressboolean fromUser) { 
        if
(fromUser){ 
            mediaPlayer
.seekTo(progress); 
            seekBar
.setProgress(progress);
        }
    }
    
    
    
@Override
    
public void onBackPressed() {
        mediaPlayer.stop();
        finish();
    }
      


کد اکتیویتی اصلی لیست ویو:

کد پی‌اچ‌پی:
package com.kelidetan.customlistview;

import android.app.ListActivity;
import android.content.Context;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Handler;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;

public class 
MainActivity  extends ListActivity  {
     MediaPlayer mediaPlayer;
     SeekBar seek_bar;
        Button play_buttonpause_button;

        Handler seekHandler = new Handler();
    public ListView lv;
    int [] music={R.raw.abc,R.raw.asd,R.raw.asx,R.raw.my_file}; 
    public String number_of_keys
;
    public String[] my_items = {"key_1",
                                  "key_2",
                                  "key_3",
                                  "key_4",
                                  "key_5",
                                  "key_6",
                                  "key_7",
                                  "key_8",
                                  "key_9",
                                  "key_10",
                                  "key_11",
                                  "key_12",
                                  "key_13",
                                  "key_14",
                                  "key_15",
                                  "key_16",
                                  "key_17",
                                  "key_18",
                                  "key_19",
                                  "key_20"
                                 };

    @Override
    protected void onCreate
(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        
        setListAdapter
(new MyAdapter(this, 
                       android
.R.layout.simple_list_item_1, 
                       R
.id.textView1,
                       my_items));    
        
        lv 
getListView();
        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            
public void onItemClick(AdapterView<?> parent, final View view,
                int position, long id) {                        
                Intent i = new Intent(getApplicationContext(), Sotactivity.class);
                number_of_keys = String.valueOf(position+1); 
                i.putExtra("key_number", number_of_keys);
                i.putExtra("position", position);
                startActivity(i);
                    
            }

        });
    }

    
    
    private class MyAdapter extends ArrayAdapter<String>{

        public MyAdapter(Context context, int resource, int textViewResourceId,
                String[] strings) {
            super(context, resource, textViewResourceId, strings);
            // TODO Auto-generated constructor stub
        }
        
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            View row = inflater.inflate(R.layout.list_item, parent, false);
            
            String stringName = "string_key_" + String.valueOf(position+1); 
            int string_res_ID = getResources().getIdentifier(stringName,"string",getPackageName());
            String my_string = getResources().getString(string_res_ID);
            TextView tv = (TextView) row.findViewById(R.id.textView1);
            tv.setText(my_string);
            
            String imageName = "key_" + String.valueOf(position+1); 
            int image_res_ID = getResources().getIdentifier(imageName,"drawable",getPackageName());
            ImageView iv = (ImageView) row.findViewById(R.id.imageView1);
            iv.setImageResource(image_res_ID);
    
            return row;
        }
        
        
    }
    


پاسخ


پیام‌های این موضوع
RE: اجرای چندین صوت در یک لیست ویو - توسط داش بهروز - ۱۳۹۴/۰۸/۱۶, ۰۲:۳۶ ق.ظ
RE: اجرای چندین صوت در یک لیست ویو (در برنامه نویسی اندروید) - توسط kama90 - ۱۳۹۴/۰۸/۱۷, ۰۱:۲۷ ق.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان