文章目录
本地视频播放器
一、欢迎界面的编写
编写跳转界面方法
//跳转到主界面并关闭当前界面
private void startMainActivity() {
startActivity(new Intent(WelcomeActivity.this,MainActivity.class));
finish();
}
1. 功能1:延迟两秒跳转到主界面
使用handler实现
handler.postDelayed(new Runnable() {
//两秒后才执行到这里,执行在主线程中
@Override
public void run() {
startMainActivity();
Log.i("Aye","当前线程名称:"+Thread.currentThread().getName());
}
}, 2000);
2. 功能2:触屏点击立即跳转到主界面
重写onTouchEvent方法
@Override
public boolean onTouchEvent(MotionEvent event) {
Log.i("Aye","Action:"+event.getAction());
startMainActivity();
return super.onTouchEvent(event);
}
重写onDestroy方法,执行该方法时同时销毁handler对象
@Override
protected void onDestroy() {
super.onDestroy();
handler.removeCallbacksAndMessages(null);
}
3. 清单文件设置
在功能清单文件中修改Activity的启动模式,即launchMode属性,防止出现跳转界面代码执行两次产生两个MainActivity界面的问题
<activity android:name=".activity.MainActivity" android:launchMode="singleTask"
二、获取本地数据
从本地sdcard得到数据,从内容提供者里面获取视频,在子线程执行
1. 编写主界面布局
父布局使用线性布局
<TextView
android:id="@+id/tv_title"
android:textSize="20dp"
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="40dp"
android:text="本地视频"/>
<TextView
android:id="@+id/tv_flag"
android:gravity="center"
android:text="暂无视频..."
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="match_parent"></TextView>
<ListView
android:id="@+id/lv_list"
android:layout_width="match_parent"
android:layout_height="match_parent"></ListView>
2. 动态获取权限
首先在onCreate中编写获取动态权限代码