Fix media controller position on video view
Fix media controller position on video view
i have videoview in a popup page in my apps, the problem is media controllers position is not properly like below, i want the media controller located inside video view, how i can fix that?
here is my code for displaying video view and media controller, i allready set anchor view to video view but it doesn't work
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_popup_preview);
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;
getWindow().setLayout((int) (width * .9d), (int) (height * .65d));
final LatestVideo vid = getIntent().getParcelableExtra("videolatest");
String url_video = vid.source_content;
nama.setText(vid.name);
judul.setText(vid.judul);
harga.setText("Rp." + vid.price);
mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
Uri uri = Uri.parse(url_video);
videoView.setVideoURI(uri);
videoView.setMediaController(mediaController);
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
@Override
public void onPrepared(MediaPlayer mediaPlayer)
videoView.start();
);
videoView.setOnErrorListener(new MediaPlayer.OnErrorListener()
@Override
public boolean onError(MediaPlayer mediaPlayer, int i, int i1)
return false;
);
loadRelatedLatestVideo();
and here is my layout xml for popup page :
<?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="wrap_content"
android:alpha="0.8"
android:gravity="center_horizontal"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="250dp"
android:orientation="vertical">
<FrameLayout
android:id="@+id/iv_video"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginEnd="0dp"
android:layout_marginStart="0dp"
android:background="@android:color/black">
<FrameLayout
android:id="@+id/frm_controller"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" />
<VideoView
android:id="@+id/vv_RelatedLatestpreview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_gravity="center" />
</FrameLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/grey_e4e4e4"
android:elevation="2dp"
android:orientation="vertical"
android:paddingLeft="5dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/txtpopupnama"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nama Artis"
android:textSize="18sp" />
<TextView
android:id="@+id/txtpopupjudul"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Judul Video"
android:textSize="16sp" />
<TextView
android:id="@+id/txtpopupharga"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="3dp"
android:text="Harga"
android:textColor="@android:color/holo_blue_dark"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Berlangganan"
android:textAllCaps="false"
android:textSize="18sp"
android:id="@+id/btnSubscribe"
android:layout_margin="5dp"
android:textColor="@color/white"
android:background="@drawable/selector_rounded_blue_logo" />
2 Answers
2
use mediaController.setAnchorView(videoView);
inside setOnPreparedListener
mediaController.setAnchorView(videoView);
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
@Override
public void onPrepared(MediaPlayer mediaPlayer)
mediaController.setAnchorView(videoView);
videoView.start();
);
try to replace parent(linearlayout) of video controller to relativelayout and set property android:layout_alignParentBottom="true" of child(videocontroler) is true in xml.
Required, but never shown
Required, but never shown
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.