- 浏览: 235915 次
- 性别:
- 来自: 苏州
最新评论
-
Leif_冬:
...
android studio首次安装运行时卡在更新处理方法 -
zzszxn:
不行啊,在页面上显示的背景是黑的啊,不是透明的啊!
android canvas 设置背景透明 -
Leif_冬:
...
java 读取文件方法
package training.filesystem; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import android.R.integer; import android.R.layout; import android.app.AlertDialog; import android.app.ListActivity; import android.content.DialogInterface; import android.os.Bundle; import android.view.Display; import android.view.Gravity; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.view.WindowManager; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.LinearLayout.LayoutParams; import android.widget.Button; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; public class FilesystemActivity extends ListActivity implements OnClickListener, OnItemSelectedListener { private TextView hint; private ListView list; private TextView filename; private Spinner filetype; private Button oKButton,cancelButton; private String root = "/"; private String root_sdcard = "/mnt/sdcard"; private ArrayList<String> path; private ArrayList<Map<String, Object>> item; private ArrayList<Version> aboutVersionList = new ArrayList<Version>(); private String pathString; private String PATH_FILE_NAME; private AlertDialog warnAlertDialog; private AlertDialog errorAlertDialog; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main); hint = (TextView) findViewById(R.id.path); filename =(TextView)findViewById(R.id.name); oKButton = (Button)findViewById(R.id.ok); cancelButton = (Button)findViewById(R.id.cancel); filetype = (Spinner)findViewById(R.id.spinner); filetype.setOnItemSelectedListener(this); list = this.getListView(); oKButton.setOnClickListener(this); cancelButton.setOnClickListener(this); getfiledir(root_sdcard,0); WindowManager manager = getWindowManager(); Display display = manager.getDefaultDisplay(); android.view.WindowManager.LayoutParams params = getWindow().getAttributes(); params.height = (int)(display.getHeight() * 0.5); params.width = (int)(display.getWidth() * 0.5); params.dimAmount = 0.0f; getWindow().setAttributes(params); getWindow().setGravity(Gravity.CENTER); } protected void getfiledir(String filepath,int type) { final int abcd = type; item = new ArrayList<Map<String, Object>>(); path = new ArrayList<String>(); hint.setText(filepath); pathString = filepath; File f = new File(filepath); File[] files = f.listFiles(); if (!filepath.equals(root)) { Map<String, Object> map = new HashMap<String, Object>(); map.put("icon", R.drawable.up_folder); map.put("name", "back to /"); item.add(map); path.add("/mnt/sdcard/"); Map<String, Object> map2 = new HashMap<String, Object>(); map2.put("icon", R.drawable.up_folder); map2.put("name", "back to ../"); item.add(map2); path.add(f.getParent()); } if (files != null) { for (int i = 0; i < files.length; i++) { if(type == 0){ Map<String, Object> map = new HashMap<String, Object>(); if (files[i].isDirectory()) { map.put("icon", R.drawable.folder); }else { map.put("icon", R.drawable.file); } map.put("name", files[i].getName()); item.add(map); path.add(files[i].getPath()); }else if (type == 1) { if (files[i].isDirectory()) { Map<String , Object> map = new HashMap<String, Object>(); map.put("icon", R.drawable.folder); map.put("name", files[i].getName()); item.add(map); path.add(files[i].getPath()); } }else if (type == 2) { if (files[i].isFile()) { Map<String, Object> map = new HashMap<String, Object>(); map.put("icon", R.drawable.file); map.put("name", files[i].getName()); item.add(map); path.add(files[i].getPath()); } } } } SimpleAdapter simpleAdapter = new SimpleAdapter(FilesystemActivity.this, item, R.layout.line, new String[]{"icon","name"}, new int[]{R.id.icon,R.id.name}); list.setAdapter(simpleAdapter); list.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub File file = new File(path.get(arg2)); if (file.isDirectory()) { getfiledir(path.get(arg2),abcd); } else { Toast.makeText(FilesystemActivity.this, "这是一个文件!", Toast.LENGTH_SHORT).show(); filename.setText(file.getName()); PATH_FILE_NAME = file.getName(); } } }); } public boolean GetVersionInfo(){ String tempString = null; boolean isHaveVersion = false; try { File file = new File(pathString + "/" + PATH_FILE_NAME); FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); while ((tempString = bufferedReader.readLine()) != null) { if (tempString.startsWith("[")) { if (tempString.substring(tempString.indexOf("[")+1,tempString.indexOf("]")).equals("Version")) { tempString = bufferedReader.readLine(); Version version = new Version(); String[] splitString = tempString.split(","); if (splitString.length != 3) { break; } version.VERSION_ID = splitString[0]; version.VERSION_DEVICE = splitString[1]; version.VERSION_PLATFORM = splitString[2]; aboutVersionList.add(version); isHaveVersion = true; break; } } } } catch (Exception e) { // TODO: handle exception e.printStackTrace(); return false; } if (isHaveVersion) { return true; }else { return false; } } public class Version{ String VERSION_ID; String VERSION_PLATFORM; String VERSION_DEVICE; } @Override public void onClick(View v) { // TODO Auto-generated method stub if (v == oKButton) { if(GetVersionInfo()){ Version version = aboutVersionList.get(0); warnAlertDialog = new AlertDialog.Builder(this).setIcon(R.drawable.warning).setTitle(getText(R.string.dialog_title)) .setMessage(getText(R.string.dialog_content_id) + version.VERSION_ID +"\n" + getText(R.string.dialog_content_platform) + version.VERSION_PLATFORM + "\n" + getText(R.string.dialog_content_device) + version.VERSION_DEVICE + "\n" + getText(R.string.dialog_content)).setPositiveButton(getText(R.string.dialog_ok), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }).setNegativeButton(getText(R.string.dialog_cancel), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }).show(); }else { errorAlertDialog = new AlertDialog.Builder(this).setIcon(R.drawable.warning).setTitle(getText(R.string.dialog_title)) .setMessage(getText(R.string.dialog_error)) .setPositiveButton(getText(R.string.dialog_ok), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // TODO Auto-generated method stub } }).show(); } } } @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub String aString = filetype.getSelectedItem().toString(); if (aString.equals("所有档案")) { getfiledir(pathString,0); }else if (aString.equals("文件夹")) { getfiledir(pathString, 1); }else if (aString.equals("文件")) { getfiledir(pathString, 2); } } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }
发表评论
-
android插入耳机状态使用扬声器外放音乐
2016-02-23 16:41 2508插入耳机的时候也可以选择使用扬声器播放音乐,来电铃声就是这么 ... -
android 过滤地图程序
2015-11-20 10:56 0Intent it = new Intent(); Uri ... -
Android改变状态栏statusbar背景色
2015-09-28 14:56 6862Android开发中在某些界面为了保证显示一致性,可能需要调 ... -
android 动态 布局
2015-09-11 17:57 1050动态增加布局: private void addLayou ... -
Android应用开发中如何使用隐藏API
2015-08-08 10:48 1350一开始需要说明的是,Google之所以要将一些API隐藏(指 ... -
android 设置对话框的宽度和高度
2015-07-24 11:02 5924方法一: /* 方法1: * 将对话框 ... -
Android常用代码之普通及系统权限静默安装APK
2015-05-05 15:34 21911、普通模式安装,调用系统Intent,代码如下: pub ... -
Android FragmentManage FragmentTransaction介绍
2015-04-29 17:34 664FragmentManage: FragmentManag ... -
android 程序启动后解锁并点亮屏幕
2015-04-29 15:53 1416getWindow().addFlags(WindowMan ... -
android 设置状态栏颜色
2015-04-13 17:11 0android 状态栏颜色设置 -
android wifi direct communication
2015-04-02 09:10 0Test_WifiDirect_Client和Test_Wi ... -
android alarm相关信息
2015-03-25 15:56 14031. Action定义: public static f ... -
android 设置闹钟显示的状态栏上
2015-01-23 16:19 1377设置状态栏上是否显示闹钟图标,通过发送广播实现: priv ... -
android 自定义加减按钮
2015-01-23 14:03 20891.定义两个shape: my_button_shape_ ... -
android 获取蓝牙已连接设备
2014-12-27 13:35 8442蓝牙如果手动配对并已连接,获取连接的设备: 1.检测连接状 ... -
android 监听USB连接状态
2014-12-18 11:27 3395android 4.4上发现采用原来的什么Intent.AC ... -
Android RadioButton 文字在左边
2014-12-02 11:47 1634第一步:android:button="@nul ... -
Android图片旋转,缩放,移位,倾斜,对称
2014-11-24 16:23 10851.初始化: private TestMa ... -
android 红外
2014-11-18 15:58 17821.初始化manager: private void in ... -
ScheduledExecutorService定时周期执行指定的任务
2014-11-03 16:06 981接口scheduleAtFixedRate原型定义及参数说 ...
相关推荐
5. 可选扩展:实现在线图片加载,集成图片缓存机制。 三、相关知识 3.1 Android系统介绍 Android是一个开源的移动设备操作系统,由Google主导开发,主要应用于智能手机和平板电脑。它基于Linux内核,提供了一整套...
而“推荐epic,其他的可选”则表明epic是首选,但还有其他替代选项可供考虑,这可能包括其他具有类似功能的浏览器或插件。 标签“软件/插件”暗示了除了独立的浏览器应用外,也可能存在与浏览器配合使用的插件,...
音/视频悬浮,8倍速(支持0.5-16.0),分享链接,后台播放,AirPlay,小窗播放,单曲循环 ,画中画…内置Adblock Plus,可选多语言规则和第三方规则,支持手动编辑标记广告,自动屏蔽侵入式广告。文件管理支持手动...
- 在ES文件浏览器的主界面,用户通常会看到SD卡作为其中一个可选的存储位置,点击该选项即可浏览SD卡上的文件和文件夹。 - 如果SD卡未显示,可以尝试重启设备或者检查SD卡是否已正确插入。 3. **查看U盘上的文件*...
录音默认输出mp3格式,另外可选wav格式(此格式录音文件超大);有限支持ogg(beta)、webm(beta)格式;支持任意格式扩展(前提有相应编码器)。 mp3默认16kbps的比特率,2kb每秒的录音大小,音质还可以(如果使用8...
----------------------------...• 优化的图形库 包括定制的 2D 图形库, 3D 图形库基于 OpenGL ES 1.0 (硬件加速可选) • SQLite SQLite SQLite SQLite 用作结构化的数据存储 • 多媒体支持 包括常见的音频、视频和...
// 调用Android插件打开文件浏览器 currentActivity.Call("OpenFileBrowser", new AndroidJavaRunnable(OnActivityResult)); } } void OnActivityResult(int requestCode, int resultCode, AndroidJavaObject ...
在Android操作系统中,截图是日常使用手机时非常常见的功能,用于保存屏幕上的当前状态或分享信息。然而,标准的截图操作通常只能捕获整个屏幕,而不能自由选择想要截取的部分。为了满足用户对自定义截图的需求,...
傲游云浏览器Android版是针对Android系统精心打造的浏览器, 同时也是全球首款拥有云标签、云推送、云下载、云收藏功能的多标签网页浏览器。炫酷的界面,创新的手势操作、阅读模式、应用中心等强大功能,给用户带来...
总的来说,"图片浏览器(可缩放)"项目涉及到了Android应用开发中的多个重要知识点,包括UI组件(`Gallery`和`ImageSwitcher`)、手势识别(`ScaleGestureDetector`)、图片加载和处理、以及内存管理策略。...
• 优化的图形库 包括定制的2D 图形库,3D 图形库基于 OpenGL ES 1.0 (硬件加速可选) • SQLite SQLite SQLite SQLite 用作结构化的数据存储 • 多媒体支持 包括常见的音频、视频和静态图像格式 (如 MPEG4, H.264...
* 优化的图形库:包括定制的2D图形库,3D图形库基于OpenGL ES 1.0(硬件加速可选) * SQLite:用作结构化的数据存储 * 多媒体支持:包括常见的音频、视频和静态图像格式 * GSM电话技术(依赖于硬件) * 蓝牙...
4. 优化的图形机制:2D图形库和3D图形实现(可选硬件加速)。 5. SQLite数据库:轻量级但功能强大的数据库系统。 6. 多媒体支持:广泛支持音频、视频和静态图像格式。 7. 支持GSM、蓝牙、EDGE、3G和Wi-Fi等通信技术...
4.1.3使用文件浏览器 4.1.4使用模拟器控制 4.1.5 使用日志 4.1.6使用Screen Capture捕捉设备屏幕 4.2 使用Android调试桥 4.2.1使用ADB 4.2.2显示连接到计算机的设备 4.2.3针对特定设备操作 4.2.4启动和停止ADB 4.2.5...
- 优化的图形:包括一个自定义的2D图形库和基于OpenGLES 1.0规范的3D图形(可选硬件加速)。 - SQLite数据库:用于结构化数据存储。 - 媒体支持:支持常见的音频、视频和图像格式,包括MPEG4、H.264、MP3、AAC、AMR...
adb 实用程序支持一些可选命令行参数,以提供强大的特性,例如复制文件到设备或从设备复制文件。可以使用 shell 命令行参数连接到手机本身,并发送基本的 shell 命令。图 4 显示在通过 USB 线连接到 Windows 笔记本...
数据存取是开发中不可忽视的部分,Android提供了多种数据存储方式,包括使用SharedPreferences进行轻量级的数据存储,文件存储用于读写文件,SQLite数据库提供了一个轻量级的关系型数据库解决方案,而...
- **图形机制**:自定义2D图形库与基于OpenGL ES 1.0规范的3D图形实现(可选硬件加速)。 - **SQLite**:轻量级数据库,支持结构化数据存储。 - **媒体支持**:支持常见音频、视频及图片格式。 - **硬件支持**:如...
【】 | 【】如果本文档图片没有显示,请手动切换到Gitee镜像库阅读文档。 ...,支持大部分已实现getUserMedia的移动端、PC端浏览器;...录音默认输出mp3格式,另外可选wav格式;有限支持ogg(beta)、webm(b
- **aapt**:Android Asset Packaging Tool,用于处理资源文件。 - **android**:Android命令行工具。 - **layoutopt**:优化布局设计。 - **mksdcard**:创建虚拟SD卡映像文件。 - **ddms**:Device Debug Monitor ...