学渣的播放器准备类似网易客户端的左右滑动页面,滑动页面采用开源项目SlidingMenu,这个项目已经包装的很好了,例子里有一个LeftAndRightActivity,学渣本项目的主acitivyt将基于这个例子,在学渣的上篇博客里也有这个例子的说明,还有actionbar的设置在这篇博客里,好了,先上效果图


如上所示范,可以左滑和右滑,主要的说明都在以前的博客里说了,现在直接上代码:

package com.zhaohui.main;


import java.io.IOException;

import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.example.happyplayer.R;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import com.jeremyfeinstein.slidingmenu.lib.app.SlidingActivity;
import com.zhaohui.base.BaseActivity;
import com.zhaohui.base.SampleListFragment;
import com.zhaohui.base.SampleListFragment2;
import com.zhaohui.happyplayer.LeftAndRightActivity;

import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnPreparedListener;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends BaseActivity {
	
	//constructor
	public MainActivity() {
		super(R.string.left_and_right);
	}

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		
		//设置模式为左右滑动
		getSlidingMenu().setMode(SlidingMenu.LEFT_RIGHT);
		getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
		//设置主页面的布局
		setContentView(R.layout.main);
		
		//将左侧滑动页面用fragement代替
		getSupportFragmentManager()
		.beginTransaction()
		.replace(R.id.menu_frame, new SampleListFragment2())
		.commit();
			
		//设置第二个SlidingMenu
		getSlidingMenu().setSecondaryMenu(R.layout.menu_frame_two);
		getSlidingMenu().setSecondaryShadowDrawable(R.drawable.shadowright);
		//将右侧滑动页面用fragement代替
		getSupportFragmentManager()
		.beginTransaction()
		.replace(R.id.menu_frame_two, new SampleListFragment())
		.commit();
	}
	
	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		//actionbar的选择
		switch (item.getItemId()) {
		case android.R.id.home:
			//点击home键
			//显示左侧侧滑动页面
			getSlidingMenu().showMenu();
			return true;
		
		case R.id.action_settings:
			//点击右侧menu键
			//显示右侧滑动页面
			getSlidingMenu().showSecondaryMenu();
			return true;
		}
		return super.onOptionsItemSelected(item);
	}
	

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		//设置actionbar
		getSupportMenuInflater().inflate(R.menu.actionbar, menu);
		return true;
	}
}

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐