2013-04-18 2 views
0

내 활동에 미디어 플레이어와 mediaController를 사용하여 오디오를 재생하고 있습니다. 내 활동에는 오디오와 관련된 이미지가 있고 그 아래에 오디오의 설명이 있습니다. mediaController를 이미지 하단과 설명 위에 표시하고 싶습니다. 현재 mediaController는 이미지를 앵커 뷰로 제공하더라도 장치의 맨 아래에 나타납니다. 내가 여기Android 미디어 컨트롤러 위치 지정

답변

0

은 당신이가는 설명 위를 MediaController를 이동할 수있는 방법이 있나요 :

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

    <VideoView 
     android:id="@+id/videoview" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="@color/blue" /> 

</LinearLayout> 

활동 코드 :

package com.appsopmaat.bethgazo; 

import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 

import android.app.Activity; 
import android.app.ProgressDialog; 
import android.content.Context; 
import android.media.MediaPlayer; 
import android.media.MediaPlayer.OnCompletionListener; 
import android.media.MediaPlayer.OnErrorListener; 
import android.media.MediaPlayer.OnPreparedListener; 
import android.net.ConnectivityManager; 
import android.net.NetworkInfo; 
import android.net.Uri; 
import android.os.Bundle; 
import android.os.Environment; 
import android.widget.MediaController; 
import android.widget.Toast; 
import android.widget.VideoView; 

import com.loopj.android.http.AsyncHttpClient; 
import com.loopj.android.http.BinaryHttpResponseHandler; 

public class Player extends Activity { 

    VideoView videoView; 
    MediaController mediaController; 

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


     videoView = (VideoView) findViewById(R.id.videoview); 
     mediaController = new MediaController(Player.this); 
     videoView.setMediaController(mediaController); 
           videoView.setVideoURI(Uri.parse(mp3url)); 
           videoView.start(); 
          } 
         } 
        }); 
     } 

     videoView.setOnErrorListener(new OnErrorListener() { 

      @Override 
      public boolean onError(MediaPlayer mp, int what, int extra) { 
       // TODO Auto-generated method stub 
       Toast.makeText(Player.this, "Error please try again.", 
         Toast.LENGTH_LONG).show(); 
       finish(); 
       return true; 
      } 
     }); 

     videoView.setOnPreparedListener(new OnPreparedListener() { 

      @Override 
      public void onPrepared(MediaPlayer mp) { 
       // TODO Auto-generated method stub 
       mediaController.show(); 
      } 
     }); 

     videoView.setOnCompletionListener(new OnCompletionListener() { 

      @Override 
      public void onCompletion(MediaPlayer mp) { 
       // TODO Auto-generated method stub 
       finish(); 
      } 
     }); 
    } 
} 
+0

는 비디오 뷰를 사용하는 데 필요한 ? 나는 비디오를 재생하고 있지 않다. – user2041902

+0

글쎄, 비디오 뷰를 사용하면 원하는 그림으로 배경을 설정할 수 있지만 xml에서 mediacontroller를 사용하는 것이 가능하다고 생각하기 때문에 비디오 뷰를 사용했다. –

+0

그래도 장치 하단에 mediaController가 표시됩니다. – user2041902

관련 문제