package com.talent.allshare;
import java.util.ArrayList;
import java.util.List;
import org.cybergarage.upnp.Device;
import org.cybergarage.util.CommonLog;
import org.cybergarage.util.LogFactory;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.drawable.AnimationDrawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.ViewTreeObserver.OnPreDrawListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import com.talent.allshare.adapter.ContentAdapter;
import com.talent.allshare.adapter.DeviceAdapter;
import com.talent.allshare.bean.PlaylistBean;
import com.talent.allshare.network.Item;
import com.talent.allshare.network.ItemFactory;
import com.talent.allshare.network.UpnpUtil;
import com.talent.allshare.player.DownLoadHelper;
import com.talent.allshare.player.DownLoadHelper.IDownLoadCallback;
import com.talent.allshare.player.FileManager;
import com.talent.allshare.player.MediaManager;
import com.talent.allshare.proxy.AllShareProxy;
import com.talent.allshare.proxy.ContentManager;
import com.talent.allshare.proxy.ControlRequestProxy;
import com.talent.allshare.proxy.ControlRequestProxy.ControlRequestCallback;
import com.talent.allshare.proxy.DeviceBrocastFactory;
import com.talent.allshare.proxy.IDeviceChangeListener;
import com.talent.allshare.softapplication.SoftApplication;
import com.talent.allshare.util.CommonUtil;
import com.youplayer.player.R;
import com.youplayer.player.YouExplorer;
@SuppressLint("ResourceAsColor")
public class ContentActivity extends Activity implements OnItemClickListener,
IDeviceChangeListener, ControlRequestCallback, OnClickListener {
private static final CommonLog log = LogFactory.createLog();
private TextView mTVSelDeV;
private ListView mContentListView;
private ImageView mBtnBack;
private ContentAdapter mContentAdapter;
private AllShareProxy mAllShareProxy;
private ContentManager mContentManager;
private List<Item> mCurItems, mSafe;
private DeviceBrocastFactory mBrocastFactory;
private Handler mHandler;
private int currentFlag = -1;// video 0 ,music 1 ,photo 2, file 3
private ImageView videoBtn;//
private ImageView musicBtn;
private ImageView photoBtn;
private ImageView loaclBtn;
private ImageView mUpdateBtn;
private ListView mDevListView;
private DeviceAdapter mDevAdapter;
private ImageView updateBtn;
private LinearLayout allshareView;
private LinearLayout contentView;
private DownLoadHelper mDownLoadHelper;
private Handler handler;
private LinearLayout ll_progress;
private TextView myfloatview;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
handler = new Handler() {
public void handleMessage(android.os.Message msg) {
switch (msg.what) {
case 0x90001:
Toast.makeText(ContentActivity.this, getResources().getString(R.string.downloadok),
Toast.LENGTH_SHORT).show();
break;
case 0x90002:
Toast.makeText(ContentActivity.this, getResources().getString(R.string.downloaderror),
Toast.LENGTH_SHORT).show();
break;
default:
break;
}
};
};
setContentView(R.layout.content_layout);
mDownLoadHelper = new DownLoadHelper();
mDownLoadHelper.init();
initView();
initData();
mAllShareProxy.startSearch();
/*
myfloatview=new TextView(getApplicationContext());
myfloatview.setText("Only for demo !!!");
myfloatview.setBackgroundColor(0x7000ff00);
myfloatview.setTextColor(0xFFFF0000);
WindowManager wm=(WindowManager)getApplicationContext().getSystemService("window");
WindowManager.LayoutParams lp= new WindowManager.LayoutParams(
150,
31,
WindowManager.LayoutParams.TYPE_PRIORITY_PHONE,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.RGBA_8888);
lp.gravity=Gravity.LEFT|Gravity.TOP;
lp.x=20;
lp.y=50;
lp.width=140;
lp.height=25;
wm.addView(myfloatview, lp); */
}
@Override
protected void onResume() {
// TODO Auto-generated method stu =
currentFlag = -1;
super.onResume();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
if (mContentManager != null)
mContentManager.clear();
if (mBrocastFactory != null)
mBrocastFactory.unRegisterListener();
if(mAllShareProxy!=null) {
mAllShareProxy.exitSearch();
}
/*if(myfloatview!=null ) {
WindowManager wm=(WindowManager)getApplicationContext().getSystemService("window");
wm.removeView(myfloatview);
myfloatview=null;
}*/
super.onDestroy();
}
private void initView() {
ll_progress = (LinearLayout) findViewById(R.id.ll_progress);
iv_loading_frame = (ImageView) findViewById(R.id.iv_loading_frame);
allshareView = (LinearLayout) findViewById(R.id.allshare_ll);
contentView = (LinearLayout) findViewById(R.id.content_ll);
allshareView.setVisibility(View.VISIBLE);
contentView.setVisibility(View.GONE);
startLoadingFrameAnim(iv_loading_frame);
ll_progress.setVisibility(View.VISIBLE);
updateBtn = (ImageButton) findViewById(R.id.device_update);
mDevListView = (ListView) findViewById(R.id.device_list);
mDevListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Device device = (Device) parent.getItemAtPosition(position);
mAllShareProxy.setSelectedDevice(device);
allshareView.setVisibility(View.GONE);
contentView.setVisibility(View.VISIBLE);
ll_progress.setVisibility(View.GONE);
initContent();
}
});
TextView emptyView = new TextView(this);
emptyView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT));
emptyView.setTextSize(23);
emptyView.setVisibility(View.GONE);
// ViewGroup v;
((ViewGroup) mDevListView.getParent()).addView(emptyView);
mDevListView.setEmptyView(emptyView);
mTVSelDeV = (TextView) findViewById(R.id.tv_selDev);
mContentListView = (ListView) findViewById(R.id.content_list);
mContentListView.setOnItemClickListener(this);
mContentListView
.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent,
View arg1, int position, long arg3) {
Item item = (Item) parent.getItemAtPosition(position);
// showTheDialog(position, item, "");
// if (UpnpUtil.isVideoItem(item)) {
// showTheDialog(position, item, "music");
// }
downloadbyURL(item.getRes());
return true;
}
});
mBtnBack = (ImageView) findViewById(R.id.btn_back);
mBtnBack.setOnClickListener(this);
mUpdateBtn = (ImageView) findViewById(R.id.btn_update);
mUpdateBtn.setOnClickListener(this);
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setMessage("Loading...");
videoBtn = (ImageView) findViewById(R.id.video_btn);
musicBtn = (ImageView) findViewById(R.id.music_btn);
photoBtn = (ImageView) findViewById(R.id.photo_btn);
loaclBtn = (ImageView) findViewById(R.id.loacl_btn);
videoBtn.setOnClickListener(this);
musicBtn.setOnClickListener(this);
photoBtn.setOnClickListener(this);
loaclBtn.setOnClickListener(this);
updateBtn.setOnClickListener(this);
}
/**
* 显示下载对话框
*
* @param arg2
* @param item
*/
Dialog dialog = null;
int switchFlag = -1;
private void showTheDialog(int arg2, final Item item, String string) {
if ("music".equals(string)) {
} else {
}
new AlertDialog.Builder(this)
.setTitle(getResources().getString(R.string.qingxuanze))
.setIcon(android.R.drawable.ic_dialog_info)
.setSingleChoiceItems(new String[] { "下载", "添加 到播放列表" }, 0,
new DialogInterface.OnClickListener() {
public void onClick(final DialogInterface dialog,
int which) {
switchFlag = which;
}
})
.setNegativeButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:
Toast.makeText(ContentActivity.this, "开始下载",
Toast.LENGTH_SHORT).show();
Log.e("gzf", "开始下载");
String requestUrl = item.getRes();
Log.e("gzf", "" + requestUrl);
mDownLoadHelper.syncDownLoadFile(requestUrl,
FileManager.mkSaveFilePath(requestUrl),
new IDownLoadCallback() {
@Override
public void downLoadResult(
boolean isSuccess,
String savePath) {
//
Log.e("gzf", "" + isSuccess);
download(isSuccess);
}
});
break;
case 1:
List<PlaylistBean> list = SoftApplication
.getInstance().getMusicPlaylists();
list.add(new PlaylistBean("1", "2", "3", item));
SoftApplication.getInstance().setMusicPlaylists(
list);
break;
default:
break;
}
}
}).show();
// AlertDialog.Builder builder = new Builder(ContentActivity.this);
// builder.setMessage("是否下载该项"+item.getAlbum());
//
// builder.setTitle("提示");
//
// builder.setPositiveButton("确认", new
// android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(final DialogInterface dialog, int which) {
// Toast.makeText(ContentActivity.this, "开始下载",
// Toast.LENGTH_SHORT).show();
// Log.e("gzf", "开始下载");
// String requestUrl = item.getRes();
// Log.e("gzf", ""+requestUrl);
// mDownLoadHelper.syncDownLoadFile(requestUrl,
// FileManager.mkSaveFilePath(requestUrl), new IDownLoadCallback() {
//
// @Override
// public void downLoadResult(boolean isSuccess, String savePath) {
// //
// Log.e("gzf", ""+isSuccess);
// download(isSuccess );
// dialog.dismiss();
// }
// });
// }
// });
// builder.setNegativeButton("取消", new
// android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog, int which) {
// dialog.dismiss();
// }
// });
//
// builder.create().show();
// View view = View.inflate(ContentActivity.this,
// R.layout.download_dialog, null);
// TextView tv_download = (TextView)view.findViewById(R.id.tv_download);
// tv_download.setOnClickListener(new OnClickListener() {
//
// @Override
// public void onClick(View arg0) {
//
// }
// });
// dialog = new Dialog(this,R.style.dialog);
// dialog.setContentView(R.layout.download_dialog);
// dialog.set
// dialog.show();
// dialog = new
// AlertDialog.Builder(this).setView(view)ContentActivity.show();
}
public void download(boolean bo) {
if (bo) {
// Toast.makeText(ContentActivity.this,"下载成功",
// Toast.LENGTH_SHORT).show();
System.err.println(getResources().getString(R.string.downloadok));
handler.sendEmptyMessage(0x90001);
} else {
// Toast.makeText(ContentActivity.this,"下载失败",
// Toast.LENGTH_SHORT).show();
handler.sendEmptyMessage(0x90002);
System.err.println(getResources().getString(R.string.downloaderror));
}
}
private void initData() {
mDevAdapter = new DeviceAdapter(this, new ArrayList<Device>());
mDevListView.setAdapter(mDevAdapter);
mBrocastFactory = new DeviceBrocastFactory(this);
mBrocastFactory.registerListener(this);
mAllShareProxy = AllShareProxy.getInstance(this);
//
}
private void initContent() {
mContentManager = ContentManager.getInstance();
mCurItems = new ArrayList<Item>();
mContentAdapter = new ContentAdapter(this, mCurItems);
mContentListView.setAdapter(mContentAdapter);
updateSelDev();// 设置选中名字
mHandler = new Handler();
currentFlag = -1;// init currentflag video flag;
// TODO setVidebuttton fouce
mHandler.postDelayed(new RequestDirectoryRunnable(), 100);
}
private void requestDirectory() {
Device selDevice = mAllShareProxy.getSelectedDevice();
if (selDevice == null) {
CommonUtil.showToask(this, getResources().getString(R.string.nodevices));
// finish();
return;
}
ControlRequestProxy.syncGetDirectory(this, this);
showProgress(true);
}
class RequestDirectoryRunnable implements Runnable {
@Override
public void run() {
// TODO Auto-generated method stub
requestDirectory();
}
}
private void setContentlist(List<Item> list, int type) {
mSafe = new ArrayList<Item>();
mSafe = list;
mCurItems = list;
if (list == null) {
mContentAdapter.clear();
} else {
List<Item> newlist = new ArrayList<Item>();
for (int i = 0; i < list.size(); i++) {
Item item = list.get(i);
switch (type) {
case 0:
if (UpnpUtil.isVideoItem(item) || UpnpUtil.isNULLItem(item)) {
newlist.add(item);
}
break;
case 1:
if (UpnpUtil.isAudioItem(item) || UpnpUtil.isNULLItem(item)) {
newlist.add(item);
}
break;
case 2:
if (UpnpUtil.isPictureItem(item)
|| UpnpUtil.isNULLItem(item)) {
newlist.add(item);
}
break;
case 3:
if (UpnpUtil.isFileItem(item) || UpnpUtil.isNULLItem(item)) {
newlist.add(item);
}
break;
default:
newlist.add(item);
break;
}
}
mContentAdapter.refreshData(newlist);
}
}
private ProgressDialog mProgressDialog;
private void showProgress(boolean bShow) {
mProgressDialog.dismiss();
if (bShow) {
mProgressDialog.show();
}
}
private void goMusicPlayerActivity(int index, Item item) {
// Intent intent = new Intent();
// intent.setClass(this, MusicPlayerActivity.class);
// intent.putExtra(MusicPlayerActivity.PLAY_INDEX, index);
// ItemFactory.putItemToIntent(item, intent);
// ContentActivity.this.startActivity(intent);
Intent intent = new Intent(this, YouExplorer.class);
intent.setAction("android.intent.action.VIEW");
intent.setData(Uri.parse(item.getRes()));
ContentActivity.this.startActivity(intent);
// finish();
}
private void goVideoPlayerActivity(int position, Item item) {
// MediaManager.getInstance().setVideoList(mCurItems);
//
// Intent intent = new Intent();
// intent.setClass(this, VideoPlayerActivity.class);
// intent.putExtra(VideoPlayerActivity.PLAY_INDEX, position);
//
// ItemFactory.putItemToIntent(item, intent);
// ContentActivity.this.startActivity(intent);
Intent intent = new Intent(this, YouExplorer.class);
intent.setAction("android.intent.action.VIEW");
intent.setData(Uri.parse(item.getRes()));
ContentActivity.this.startActivity(intent);
}
private void goPicturePlayerActivity(int position, Item item) {
int position1=-1;
List<Item> newlist = new ArrayList<Item>();
for (int i = 0; i < mCurItems.size(); i++) {
Item item1 = mCurItems.get(i);
if (UpnpUtil.isPictureItem(item1)) {
newlist.add(item1);
if(i<=position) {
position1++;
}
}
}
//MediaManager.getInstance().setPictureList(mCurItems);
MediaManager.getInstance().setPictureList(newlist);
Intent intent = new Intent();
intent.setClass(this, PicturePlayerActivity.class);
intent.putExtra(PicturePlayerActivity.PLAY_INDEX, position1);
ItemFactory.putItemToIntent(item, intent);
ContentActivity.this.startActivity(intent);
}
private void goFilePlayerActivity(int position, Item item) {
int position1=-1;
List<Item> newlist = new ArrayList<Item>();
for (int i = 0; i < mCurItems.size(); i++) {
Item item1 = mCurItems.get(i);
if (UpnpUtil.isFileItem(item1)) {
newlist.add(item1);
if(i<=position) {
position1++;
}
}
}
//MediaManager.getInstance().setPictureList(mCurItems);
MediaManager.getInstance().setPictureList(newlist);
Intent intent = new Intent();
intent.setClass(this, FileReaderActivity.class);
intent.putExtra(FileReaderActivity.PLAY_INDEX, position1);
ItemFactory.putItemToIntent(item, intent);
ContentActivity.this.startActivity(intent);
// to be done
}
/**
* 开始"..."的帧动画
*
* @param imageView
*/
private ImageView iv_loading_frame;
private AnimationDrawable loadingFrameAnimDrawable;
public void startLoadingFrameAnim(ImageView imageView) {
imageView.setBackgroundResource(R.anim.frame_animation);
loadingFrameAnimDrawable = (AnimationDrawable) imageView
.getBackground();
imageView.getViewTreeObserver().addOnPreDrawListener(
new OnPreDrawListener() {
@Override
public boolean onPreDraw() {
loadingFrameAnimDrawable.start();
return true;
}
});
}
/**
* 停止载入中的帧动画"..."
*/
public void stopLoadingFrameAnim() {
if (loadingFrameAnimDrawable != null) {
loadingFrameAnimDrawable.stop();
}
}
boolean exit = true;
private void back(boolean b) {
if(mContentManager == null)
{
new AlertDialog.Builder(ContentActivity.this)
.setTitle(getResources().getString(R.string.sure_to_exit))
.setNegativeButton(
getResources().getString(R.string.ok),
new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
ContentActivity.this.finish();
}
})
.setNeutralButton(
getResources().getString(R.string.cancel),
new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
}
}).show();
return;
}
System.out.println("back---1");
List<Item> listpre = mContentManager.peekListItem();
mContentManager.popListItem();
List<Item> listnxt = mContentManager.peekListItem();
if(listpre ==null){
if(exit){
startLoadingFrameAnim(iv_loading_frame);
if (b)
return;
// mBtnBack.setVisibility(View.INVISIBLE);
new AlertDialog.Builder(ContentActivity.this)
.setTitle(getResources().getString(R.string.sure_to_exit))
.setNegativeButton(
getResources().getString(R.string.ok),
new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
ContentActivity.this.finish();
}
})
.setNeutralButton(
getResources().getString(R.string.cancel),
new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
}
}).show();
}else{
exit =true;
}
}else{
if(listnxt == null){
contentView.setVisibility(View.GONE);
allshareView.setVisibility(View.VISIBLE);
exit = true;
}else{
setContentlist(listnxt, currentFlag);
exit = false;
}
}
// if (mContentManager != null) {
//
// List<Item> list1 = mContentManager.peekListItem();
// mContentManager.popListItem();
// List<Item> list = mContentManager.peekListItem();
// if(list1 == null){
// startLoadingFrameAnim(iv_loading_frame);
// if (b)
// return;
//
// if(exit){
//
// // mBtnBack.setVisibility(View.INVISIBLE);
// new AlertDialog.Builder(ContentActivity.this)
// .setTitle(getResources().getString(R.string.sure_to_exit))
// .setNegativeButton(
// getResources().getString(R.string.ok),
// new android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog,
// int which) {
// dialog.dismiss();
// ContentActivity.this.finish();
// }
// })
// .setNeutralButton(
// getResources().getString(R.string.cancel),
// new android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog,
// int which) {
// dialog.dismiss();
// }
// }).show();
// }
// contentView.setVisibility(View.GONE);
// allshareView.setVisibility(View.VISIBLE);
// exit = true;
// }else{
// if(list == null){
// exit = true;
// }else{
// setContentlist(list, currentFlag);
// exit = false;
// }
// }
// if (list == null) {
// if(exit){
//
// startLoadingFrameAnim(iv_loading_frame);
// if (b)
// return;
// // mBtnBack.setVisibility(View.INVISIBLE);
// new AlertDialog.Builder(ContentActivity.this)
// .setTitle(getResources().getString(R.string.sure_to_exit))
// .setNegativeButton(
// getResources().getString(R.string.ok),
// new android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog,
// int which) {
// dialog.dismiss();
// ContentActivity.this.finish();
// }
// })
// .setNeutralButton(
// getResources().getString(R.string.cancel),
// new android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog,
// int which) {
// dialog.dismiss();
// }
// }).show();
//
// }else{
// contentView.setVisibility(View.GONE);
// allshareView.setVisibility(View.VISIBLE);
// exit = true;
// }
// // super.onBackPressed();
// } else {
// exit= false;
// // mBtnBack.setVisibility(View.VISIBLE);
// setContentlist(list, currentFlag);
// }
// } else {
// exit = false;
// new AlertDialog.Builder(ContentActivity.this)
// .setTitle(getResources().getString(R.string.sure_to_exit))
// .setNegativeButton(
// getResources().getString(R.string.ok),
// new android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog,
// int which) {
// dialog.dismiss();
// ContentActivity.this.finish();
// }
// })
// .setNeutralButton(
// getResources().getString(R.string.cancel),
// new android.content.DialogInterface.OnClickListener() {
//
// @Override
// public void onClick(DialogInterface dialog,
// int which) {
// dialog.dismiss();
// }
// }).show();
// }
}
@Override
public void onBackPressed() {
System.out.println("back");
back(false);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
Item item = (Item) parent.getItemAtPosition(position);
log.e("item = \n" + item.getShowString());
if (UpnpUtil.isAudioItem(item)) {
goMusicPlayerActivity(position, item);
} else if (UpnpUtil.isVideoItem(item)) {
goVideoPlayerActivity(position, item);
} else if (UpnpUtil.isPictureItem(item)) {
goPicturePlayerActivity(position, item);
} else if (UpnpUtil.isFileItem(item)) {
goFilePlayerActivity(position, item);
} else {
ControlRequestProxy.syncGetItems(ContentActivity.this,
item.getStringid(), ContentActivity.this);
showProgress(true);
}
}
private void updateDeviceList() {
List<Device> list = mAllShareProxy.getDeviceList();
mDevAdapter.refreshData(list);
}
@Override
public void onDeviceChange(boolean isSelDeviceChange) {
// TODO Auto-generated method stub
contentView.setVisibility(View.GONE);
allshareView.setVisibility(View.VISIBLE);
startLoadingFrameAnim(iv_loading_frame);
ll_progress.setVisibility(View.GONE);
updateDeviceList();
if (isSelDeviceChange) {
//CommonUtil.showToask(this, "当前设备已卸载...");
ll_progress.setVisibility(View.VISIBLE);
// finish();
}
}
@Override
public void onGetItems(final List<Item> list) {
ll_progress.setVisibility(View.GONE);
runOnUiThread(new Runnable() {
@Override
public void run() {
showProgress(false);
if (list == null) {
CommonUtil.showToask(ContentActivity.this, getResources().getString(R.string.not_found_path));
return;
}
mContentManager.pushListItem(list);
setContentlist(list, currentFlag);
}
});
}
private void updateSelDev() {
setSelDevUI(mAllShareProxy.getSelectedDevice());
}
private void setSelDevUI(Device device) {
if (device == null) {
mTVSelDeV.setText("no select device");
} else {
mTVSelDeV.setText(device.getFriendlyName());
}
}
class DeviceUpdateRunnable implements Runnable {
@Override
public void run() {
// TODO Auto-generated method stub
if(mAllShareProxy!=null) {
//mAllShareProxy.resetSearch();
mAllShareProxy.startSearch();
}
}
}
public void setNOselect(int i,boolean dou){
ImageView iv01 = (ImageView)findViewById(R.id.iv_01);
ImageView iv02 = (ImageView)findViewById(R.id.iv_02);
ImageView iv03 = (ImageView)findViewById(R.id.iv_03);
ImageView iv04 = (ImageView)findViewById(R.id.iv_04);
iv01.setVisibility(View.INVISIBLE);
iv02.setVisibility(View.INVISIBLE);
iv03.setVisibility(View.INVISIBLE);
iv04.setVisibility(View.INVISIBLE);
switch (i) {
case 1:
if(!dou){
iv01.setVisibility(View.VISIBLE);
}
break;
case 2:
if(!dou){
iv02.setVisibility(View.VISIBLE);
}
break;
case 3:
if(!dou){
iv03.setVisibility(View.VISIBLE);
}
break;
case 4:
if(!dou){
iv04.setVisibility(View.VISIBLE);
}
break;
default:
break;
}
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.video_btn:
if (currentFlag == 0) {
currentFlag = -1;
setNOselect(1, true);
} else {
selectBtn(0);
setNOselect(1, false);
}
// videoBtn.setBackgroundColor(R.color.yellow);
List<Item> list = mContentManager.peekListItem();
setContentlist(list, currentFlag);
break;
case R.id.music_btn:
if (currentFlag == 1) {
currentFlag = -1;
setNOselect(2, true);
} else {
selectBtn(1);
setNOselect(2, false);
}
list = mContentManager.peekListItem();
setContentlist(list, currentFlag);
break;
case R.id.photo_btn:
if (currentFlag == 2) {
currentFlag = -1;
setNOselect(3, true);
} else {
selectBtn(2);
setNOselect(3, false);
}
list = mContentManager.peekListItem();
setContentlist(list, currentFlag);
break;
case R.id.loacl_btn:
if (currentFlag == 3) {
currentFlag = -1;
setNOselect(4, true);
} else {
selectBtn(3);
setNOselect(4, false);
}
list = mContentManager.peekListItem();
setContentlist(list, currentFlag);
break;
case R.id.btn_back:
back(true);
break;
case R.id.device_update:
// TODO刷新界面
if(mDevAdapter!=null) {
List<Device> deviceList = new ArrayList<Device>();
mDevAdapter.refreshData(deviceList);
}
if(mAllShareProxy!=null) {
mAllShareProxy.resetSearch();
}
if(handler!=null) {
handler.postDelayed(new DeviceUpdateRunnable(), 100);
}
break;
}
videoBtn.setImageResource(R.drawable.tab_video_s);
musicBtn.setImageResource(R.drawable.tab_music_s);
photoBtn.setImageResource(R.drawable.tab_pic_s);
loaclBtn.setImageResource(R.drawable.tab_file_s);
switch (currentFlag) {
case -1:
break;
case 0:
videoBtn.setImageResource(R.drawable.tab_video);
break;
case 1:
musicBtn.setImageResource(R.drawable.tab_music);
break;
case 2:
photoBtn.setImageResource(R.drawable.tab_pic);
break;
case 3:
loaclBtn.setImageResource(R.drawable.tab_file);
break;
default:
break;
}
}
private void selectBtn(int i) {
currentFlag = i;
switch (i) {
case 0:
break;
case 1:
break;
case 2:
break;
default:
break;
}
}
protected void downloadbyURL(String requestUrl) {
DownloadProcess download = new DownloadProcess(this);
String decodeUrl = download.decodeUri(requestUrl);
String fileName = decodeUrl
.substring(decodeUrl.lastIndexOf("/") + 1);
download.startDownload(fileName, requestUrl);
}
/*
@SuppressLint("NewApi") protected void downloadbyURL(String requestUrl) {
DownloadManager downloadManager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
Uri uri = Uri.parse(requestUrl);
Request request = new Request(uri);
//设置允许使用的网络类型,这里是移动网络和wifi都可以
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_MOBILE|DownloadManager.Request.NETWORK_WIFI);
//禁止发出通知,既后台下载,如果要使用这一句必须声明一个权限:android.permission.DOWNLOAD_WITHOUT_NOTIFICATION
//request.setShowRunningNotification(false);
//不显示下载界面
request.setVisibleInDownloadsUi(false);
//request.setDestinationInExternalFilesDir(this, null, "tar.apk");
long id = downloadManager.enqueue(request);
}*/
}