⑴ android 有没有文件选择对话框
// filename: CallbackBundle.java
package com.example.openfiledemo;
import android.os.Bundle;
// 简单的Bundle参数回调接口
public interface CallbackBundle {
abstract void callback(Bundle bundle);
}
[java] view plain
// filename: CallbackBundle.java
package com.example.openfiledemo;
import android.os.Bundle;
// 简单的Bundle参数回调接口
public interface CallbackBundle {
abstract void callback(Bundle bundle);
}
然后的打开文件对话框的一下封装:
SimpleAdapter adapter = new SimpleAdapter(getContext(), list, R.layout.filedialogitem, new String[]{"img", "name", "path"}, new int[]{R.id.filedialogitem_img, R.id.filedialogitem_name, R.id.filedialogitem_path});
this.setAdapter(adapter);
return files.length;
}
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
// 条目选择
String pt = (String) list.get(position).get("path");
String fn = (String) list.get(position).get("name");
if(fn.equals(sRoot) || fn.equals(sParent)){
// 如果是更目录或者上一层
File fl = new File(pt);
String ppt = fl.getParent();
if(ppt != null){
// 返回上一层
path = ppt;
}
else{
// 返回更目录
path = sRoot;
}
}
else{
File fl = new File(pt);
if(fl.isFile()){
// 如果是文件
((Activity)getContext()).dismissDialog(this.dialogid); // 让文件夹对话框消失
// 设置回调的返回值
Bundle bundle = new Bundle();
bundle.putString("path", pt);
bundle.putString("name", fn);
// 调用事先设置的回调函数
this.callback.callback(bundle);
return;
}
else if(fl.isDirectory()){
// 如果是文件夹
// 那么进入选中的文件夹
path = pt;
}
}
this.refreshFileList();
}
}
}
[java] view plain
// filename: OpenFileDialog.java
package com.example.openfiledemo;
SimpleAdapter adapter = new SimpleAdapter(getContext(), list, R.layout.filedialogitem, new String[]{"img", "name", "path"}, new int[]{R.id.filedialogitem_img, R.id.filedialogitem_name, R.id.filedialogitem_path});
this.setAdapter(adapter);
return files.length;
}
@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
// 条目选择
String pt = (String) list.get(position).get("path");
String fn = (String) list.get(position).get("name");
if(fn.equals(sRoot) || fn.equals(sParent)){
// 如果是更目录或者上一层
File fl = new File(pt);
String ppt = fl.getParent();
if(ppt != null){
// 返回上一层
path = ppt;
}
else{
// 返回更目录
path = sRoot;
}
}
else{
File fl = new File(pt);
if(fl.isFile()){
// 如果是文件
((Activity)getContext()).dismissDialog(this.dialogid); // 让文件夹对话框消失
// 设置回调的返回值
Bundle bundle = new Bundle();
bundle.putString("path", pt);
bundle.putString("name", fn);
// 调用事先设置的回调函数
this.callback.callback(bundle);
return;
}
else if(fl.isDirectory()){
// 如果是文件夹
// 那么进入选中的文件夹
path = pt;
}
}
this.refreshFileList();
}
}
}
⑵ android系统自带的ProgressDialog对话框显示下载文件的大小无法自定义,求解
要用ProgressDialog.setMax设置最大值.系统默认的是100的。
⑶ Android开发,点击按钮弹出对话框的问题
这里报错是代码写法有误,建议一行一行代码的写。
具体实现代码:
1.创建对象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("请输入"); //设置对话框标题
builder.setIcon(android.R.drawable.btn_star); //设置对话框标题前的图标
2.创建EditText输入框
final EditText edit = new EditText(context);
3.将输入框赋值给Dialog,并增加确定取消按键
builder.setView(edit);
builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你输入的是: " + edit.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你点了取消", Toast.LENGTH_SHORT).show();
}
});
4.设置常用api,并show弹出
builder.setCancelable(true); //设置按钮是否可以按返回键取消,false则不可以取消
AlertDialog dialog = builder.create(); //创建对话框
dialog.setCanceledOnTouchOutside(true); //设置弹出框失去焦点是否隐藏,即点击屏蔽其它地方是否隐藏
dialog.show();
⑷ android中Dialog和PopupWindow的区别
Android中的对话框有两种:PopupWindow和AlertDialog。它们都可以实现弹窗功能,但是他们之间有一些差别,下面总结了一点。 (1)Popupwindow在显示之前一定要设置宽高,Dialog无此限制。 (2)Popupwindow默认不会响应物理键盘的back,除非显示设置了popup.setFocusable(true);而在点击back的时候,Dialog会消失。 (3)Popupwindow不会给页面其他的部分添加蒙层,而Dialog会。 (4)Popupwindow没有标题,Dialog默认有标题,可以通过dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);取消标题 (5)二者显示的时候都要设置Gravity。如果不设置,Dialog默认是Gravity.CENTER。 (6)二者都有默认的背景,都可以通过setBackgroundDrawable(new ColorDrawable(android.R.color.transparent));去掉。 其中最本质的差别就是:AlertDialog是非阻塞式对话框:AlertDialog弹出时,后台还可以做事情;而PopupWindow是阻塞式对话框:PopupWindow弹出时,程序会等待,在PopupWindow退出前,程序一直等待,只有当我们调用了dismiss方法的后,PopupWindow退出,程序才会向下执行。这两种区别的表现是:AlertDialog弹出时,背景是黑色的,但是当我们点击背景,AlertDialog会消失,证明程序不仅响应AlertDialog的操作,还响应其他操作,其他程序没有被阻塞,这说明了AlertDialog是非阻塞式对话框;PopupWindow弹出时,背景没有什么变化,但是当我们点击背景的时候,程序没有响应,只允许我们操作PopupWindow,其他操作被阻塞。 我们在写程序的过程中可以根据自己的需要选择使用Popupwindow或者是Dialog。
⑸ 怎么样才能让android中所弹出的对话框显示出复选框所选择的内容
这个还是在于你的判断有问题,不管checkbox是否被选中,checkBoxString2=checkBox2.getText().toString();都不变的,所以你要自己判断,如果没有选中,那么设置为null。明白了吗? 也就是说你点击取消选中的时候,它得到的还是你布局文件中设定的那个text。
⑹ Android中的checkBOX在代码中怎么设置至少选中一个
CheckBox和Button一样,是android系统提供的最原始的控件,它的优点在于,不用用户去填写具体的信息,只需轻轻点击,缺点在于只有“是”和“否”两种情况,但我们往往利用它的这个特性,来获取用户的一些信息。
1.CheckBox的常用属性
checked属性是CheckBox最重要的属性之一,改变方式有两种,xml中定义 android:checked="true|false" 表示选中和不选中
2.在代码中设置选择状态 checkBox.setChecked(true|false);
3.获取CheckBox的状态 checkBox.isChecked(); true表示选中,false表示未选中
4.checkBox的应用
1.如果不确定某一组选项有几个的时候,例如多选之前删除,那么要使用listView + adapter 其中checkBox存放在listView的adapter中,代码实现比较复杂,需要自己去注册checkBox的事件
2.如果checkBox的选项是已经知的,例如兴趣爱好,已知有多少个选项的情况下,那么你只需要用个线性布局做为容器,将checkBox都放到这个容器中
3.获取选中的文本 如果是用listView的话,只需要自己在adapter中写一个方法,返回选中的数据即可得到文本,如果是其它容器做的话,只能去遍历这个布局下的所有checkBox
然后调用
if(checkBox.isChecked()){
checkBox.getText().toString(); //即可得到选中的文本
}
有关checkBox的更多用法,建议查看官网API文档
⑺ android 多选对话框全不选时 onclick方法里的which值是多少
这个方法在你点击对话框里面的任何一个条目时被调用
which参数的值是在对话框列表你们你选择条目的位置,没有选择的时候默认返回-1
⑻ 请问Eclipse如何打开Android工程呢
1. 还是要先打开eclipse主界面,如图
注意事项
选择目录后会出现文件夹里的所有的应用程序,要先勾选,才能打开
资料:
http://www.cnblogs.com/SkyD/archive/2010/11/25/1887219.html
⑼ androidstudio怎么导入第三方
打开android studio2.0软件 选择 File --> new --> Import Mole... (注意不是 Import Project 这个是导入项目 又会启动一个窗口)