ตัวอย่างการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView : Android
 

Tutorial :: Android :: ตัวอย่างการใช้งาน :: ตัวอย่างการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView

ในบทความนี้ จะแสดงให้เห็นถึงตัวอย่างการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView โดยจะแสดงให้เห็นถึงการเขียนคำสั่งภายใน Class Activity, การเขียนคำสั่งภายในไฟล์ XML Layout, และการประกาศ Activity ไว้ภายในไฟล์ AndroidManifest.xml ดังนี้


การเขียนคำสั่งภายใน Class Activity

  • package nutt.me.activity;
  •  
  • import android.app.Activity;
  • import android.net.Uri;
  • import android.os.Bundle;
  • import android.view.Gravity;
  • import android.view.View;
  • import android.widget.Button;
  • import android.widget.MediaController;
  • import android.widget.Toast;
  • import android.widget.VideoView;
  •  
  • public class MainActivity extends Activity
  • {
  • public void onCreate ( Bundle savedInstanceState )
  • {
  • super.onCreate ( savedInstanceState );
  •  
  • this.setContentView ( R.layout.activity_main );
  •  
  •  
  • Uri uri = Uri.parse ( "android.resource://" + this.getPackageName ( ) + "/" + R.raw.tak );
  •  
  • MediaController mediacontroller = new MediaController ( this );
  •  
  •  
  • VideoView video = ( VideoView ) this.findViewById ( R.id.video );
  •  
  • video.setMediaController ( mediacontroller );
  •  
  • video.setVideoURI ( uri );
  •  
  • video.requestFocus ( );
  •  
  • video.start ( );
  •  
  •  
  • Button button = ( Button ) this.findViewById ( R.id.button );
  •  
  • button.setOnClickListener ( new View.OnClickListener ( )
  • {
  • public void onClick ( View view )
  • {
  • VideoView video = ( VideoView ) MainActivity.this.findViewById ( R.id.video );
  •  
  • int duration = video.getDuration ( );
  •  
  • String durationTime = Integer.toString ( duration );
  •  
  •  
  • Toast toast = Toast.makeText ( MainActivity.this, "Video Time : " + durationTime, Toast.LENGTH_LONG );
  •  
  • toast.setGravity ( Gravity.BOTTOM, 0, 0 );
  •  
  • toast.show ( );
  • }
  • }
  • );
  • }
  • }

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า คำสั่ง VideoView video = ( VideoView ) MainActivity.this.findViewById ( R.id.video ); ในบรรทัดที่ 44 เป็นการสร้าง Object VideoView โดยการไปค้นหามาจาก XML Layout และคำสั่ง int duration = video.getDuration ( ); ในบรรทัดที่ 46 เป็นการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView ซึ่งเป็นหน่วย MilliSecond แล้วนำค่าที่ได้มาเก็บไว้ที่ตัวแปรประเภท int


การเขียนคำสั่งภายในไฟล์ XML Layout

  • <?xml version="1.0" encoding="utf-8"?>
  • <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  • android:layout_width="fill_parent"
  • android:layout_height="fill_parent">
  •  
  • <VideoView
  • android:id="@+id/video"
  • android:layout_width="fill_parent"
  • android:layout_height="wrap_content"
  • android:layout_centerHorizontal="true"
  • android:layout_centerVertical="true" />
  •  
  • <Button
  • android:id="@+id/button"
  • android:layout_below="@id/video"
  • android:layout_marginTop="10dp"
  • android:layout_width="wrap_content"
  • android:layout_height="wrap_content"
  • android:layout_centerHorizontal="true"
  • android:text="Show Video Time" />
  •  
  • </RelativeLayout>

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า element <VideoView> มี id คือ video (ประกาศไว้ในบรรทัดที่ 7) และ element <Button> มี id คือ button (ประกาศไว้ในบรรทัดที่ 14) ซึ่ง id เหล่านี้ถูกใช้อ้างอิงใน Class Activity ข้างต้น


การประกาศ Activity ไว้ภายในไฟล์ AndroidManifest.xml

  • <?xml version="1.0" encoding="utf-8"?>
  • <manifest ... >
  • <application ... >
  • <activity android:name="nutt.me.activity.MainActivity" ... >
  • <intent-filter>
  • <action android:name="android.intent.action.MAIN" />
  • <category android:name="android.intent.category.LAUNCHER" />
  • </intent-filter>
  • </activity>
  • </application>
  • </manifest>

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า มีการประกาศ Activity ชื่อ MainActivity ที่อยู่ใน Package nutt.me.activity ไว้ภายในไฟล์ AndroidManifest.xml ในบรรทัดที่ 4


หน้าจอแสดงผลของ ตัวอย่างการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView จากการเขียนคำสั่งข้างต้น

หน้าจอแสดงผลของ ตัวอย่างการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView

จากรูปแสดงหน้าจอของ MainActivity

หน้าจอแสดงผลของ ตัวอย่างการคืนค่าจำนวนเวลาทั้งหมดของวิดีโอใน VideoView

จากรูปแสดงหน้าจอของ MainActivity เมื่อคลิกที่ปุ่ม "Show Video Time"

Download This Example

0 Comment

  • Have no comment.

Comment Tutorial

 
 
 
 
Share This Topic Login with Facebook