Hello,
J'ai créé un layout (pour un player), et je souhaiterais associer un item SurfaceView à une classe de holder que j'ai créé, mais je ne sais pas comment faire.
Voici mon layout:
Code player.xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <?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" > <SurfaceView android:id="@+id/videoView" android:layout_width="55dp" android:layout_height="33dp" android:layout_marginLeft="35dp" /> <Button android:id="@+id/shareBlueBtn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:textSize="25dp" android:background="@drawable/hdpiblue_button" android:drawablePadding="5dp" android:drawableRight="@drawable/share_icon" android:text="@string/share_it" android:textColor="#ffffffff"/> </LinearLayout>
Pour l'instant mon Activity ne charge pas le layout mais créer un VideoHolder:
et mon VideoHolder étends SurfaceView:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public class VideoPlayer extends Activity{ private VideoHolder holder; public void onCreate ( Bundle savedInstanceState ) { super.onCreate(savedInstanceState); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); shareButton = (Button) findViewById(R.id.shareBlueBtn); holder = new VideoHolder( getApplicationContext(), this ); setContentView( holder ); }
Code VideoHolder : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public class VideoHolder extends SurfaceView implements SurfaceHolder.Callback{ private SurfaceHolder mHolder; private VideoPlayer mPlayer; public VideoHolder(Context context, VideoPlayer player ) { super(context); mPlayer = player; mHolder = getHolder(); mHolder.setFixedSize(10, 10); mHolder.addCallback(this); Log.d("camerarecord", "addCallback"); mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); }
Comment faire pour que ma classe VideoHolder soit affectée à ma Surfaceview (id: videoView) ?
Ou bien, plus simplement y a t'il une méthode pour configurer dynamiquement la taille et position de mon VideoHolder, et de mon Button?
Merci de votre aide
Partager