1、在图片中加入删除照片或者视频时,弹出对话框提示。
在packages/apps/Gallery2/src/com/android/gallery3d/ui/MenuExecutor.java中
private boolean execute(
DataManager manager, JobContext jc, int cmd, Path path) {
。。。。省略
switch (cmd) {
把每张需要删除的照片都加入都list中
case R.id.action_confirm_delete:
Log.i("delete", "action_confirm_delete");
mycount++;
mypath=path;
mypaths.add(mypath);
mypath=null;
break;
。。。。省略
}
public void startAction(int action, int title, ProgressListener listener) {
ArrayList<Path> ids = mSelectionManager.getSelected(false);
Activity activity = (Activity) mActivity;
if(title == R.string.delete)
{
mypaths=null;
mypaths=new ArrayList<Path>();
mycount=0;
dialoginit(activity);显示对话框的工程中,已经运行了“把每张需要删除的照片都加入都list中”这部分
}
MediaOperation operation = new MediaOperation(action, ids, listener);
mTask = mActivity.getThreadPool().submit(operation, null);
}
新创一个函数
private void dialoginit(Context context)
{
AlertDialog.Builder deletedialog=null;
Log.i("delete", "dialoginit");
deletedialog=new AlertDialog.Builder(context);
deletedialog.setMessage(context.getResources().getString(R.string.aler_context))
.setTitle(context.getResources().getString(R.string.aler_title))
.setIcon(android.R.drawable.ic_dialog_alert)
.setPositiveButton(context.getResources().getString(R.string.aler_sure), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
DataManager manager = mActivity.getDataManager();
for(int i=0;i<mycount;i++)
{
manager.delete(mypaths.get(i));
Log.i("delete", "delete--"+i);
}
}
})
.setNegativeButton(context.getResources().getString(R.string.aler_cancel), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.cancel();
}
});
AlertDialog alert = deletedialog.create();
alert.show();
}
2、在文件管理器中隐藏文件名
FileExplore/src/com/softwinner/explore/EventHandler.java中
public void updateDirectory(ArrayList<String> content) {
if(!mDataSource.isEmpty())
mDataSource.clear();
for(String data : content)
{
隐藏文件名为navione和autonavi50的文件或者文件夹
if(data.toLowerCase().contains("navione"))
{
}
else if(data.toLowerCase().contains("autonavi50"))
{
}
else
{
mDataSource.add(data);
}
}
mDelegate.notifyDataSetChanged();
}
3,、把bitmap转化为一个文件
以下函数是我在系统music里面使用的一个函数,是为了得到当前播放的音乐的专辑封面
private void getbitmap()
{
Log.i("music", "getArtwork");
Intent bitmapintent=new Intent();
Bitmap mybitmap=MusicUtils.getArtwork(getApplicationContext(), getAudioId(), getAlbumId(), true);这个是music代码中的一个方法。
ByteArrayOutputStream baos = new ByteArrayOutputStream();
if(mybitmap!=null)
{
mybitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
byte[] mybyte=baos.toByteArray();
BufferedOutputStream stream = null;
try {
File file=null ;
file = new File("/mnt/sdcard/mybitmap");
FileOutputStream fstream = new FileOutputStream(file);
stream = new BufferedOutputStream(fstream);
stream.write(mybyte);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (stream != null) {
try {
stream.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}
}
4、加入开机音乐