このブログを検索

mediaplayerを作ってみる(13)-2

2010年12月24日金曜日

|
とりあえず置いときます。あまり変わってませんが。

http://sattva.asasvata.net/Entry/25/

本当は、allMusicListに全曲の情報を詰めて
それを使って、randomをしようと思ったんですが、
なんか、色々考えると面倒くさいのでもういいかと。

変更は、menuで演奏履歴をクリアするようにしただけ。


    //オプションメニューの生成
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
     MenuInflater inflater = getMenuInflater();
     inflater.inflate(R.menu.options_menu, menu);
     return true;
    }
  
    //menuが選択されたときの処理
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
     switch (item.getItemId()) {
     case R.id.randomReset:
         allMusicList.clear();//clearしときます
         Toast.makeText(this, "reset", Toast.LENGTH_SHORT).show();
         break;
     }
    
     return super.onOptionsItemSelected(item);
    }


メニューを使いたかっただけです。
本当はvolume調整をメニューでしようと思ったんですが、
本体の横についてるんでいらないかと。

一応前に作ったのを利用して、main.xmlに


<TextView
    android:id="@+id/volText"
    android:layout_width="fill_parent"
    android:layout_height="30dp"
    android:textSize="16sp"
    android:background="@color/violet"
android:textColor="@color/green"
android:gravity="center">
</TextView>
<SeekBar
android:id="@+id/seekBar"
android:layout_width="fill_parent"
android:layout_height="30dp"
android:max="15"
android:progressDrawable="@color/green">
</SeekBar>


を追加して、onCreateの中に、

//seekBarの取得と初期値の設定
SeekBar seekBar = (SeekBar)findViewById(R.id.seekBar);
seekBar.setProgress(5);//とりあえず、5。

//volTextの取得と表示する文字列のセット
final TextView volText = (TextView)findViewById(R.id.volText);
volText.setText("Vol:" + seekBar.getProgress());

//volume調整のための準備
final AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
//int maxVolume = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
am.setStreamVolume(AudioManager.STREAM_MUSIC, 5, 0);

//seekBarが動かされたときの処理
seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
//volumeのセット
am.setStreamVolume(AudioManager.STREAM_MUSIC, progress, 0);
//volTextに文字列をセット
volText.setText("Vol:" + progress);
}
//@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO 自動生成されたメソッド・スタブ
}

//@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO 自動生成されたメソッド・スタブ
}
});


んな感じのを書いとくと、
こんな感じ↓に

















なったりして。

これも置いときます。
忍者に。



0 コメント:

コメントを投稿

 

Lorem

ページビューの合計