请教高手android开发中progressdialog按确定按钮时不关闭的一个问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教高手android开发中progressdialog按确定按钮时不关闭的一个问题?相关的知识,希望对你有一定的参考价值。
progressdialog可以setButton产生按钮,但是点击按钮就会关闭progressdialog,有什么办法可以让progressdialog不关闭?
LayoutInflater mInflater = LayoutInflater.from(MainView.this);View view = mInflater.inflate(R.layout.dialog, null);
final Dialog dialog = new AlertDialog.Builder(MainView.this)
.setTitle("标题")
.setView(view)
.create();
dialog.setCancelable(false);
dialog.show();
这样就建了一个没有按钮的dialog 你关不掉的
除非用dialog.cancle()关
但是现在dialog里还没滚动进度条,看到上面的R.layout.dialog没,这就是你dialog的布局,里面加个圆形progressbar就行了,或者直接这样:
pBar = new ProgressDialog(MainView.this);
pBar.setMessage("正在加载...");
pBar.setProgressStyle(ProgressDialog.STYLE_SPINNER);//圈圈状
pBar.setCancelable(false);
pBar.show();
这样根本就没按钮,你非要按钮的话按上面的方法在布局里面加按钮然后 在外层获取按钮
Button button = (Button)view.findViewById(R.id.xxx);
然后button设置事件 你用默认的button他就是带点击关闭功能的 参考技术A progressdialog.setCancelable(false);
或者在setButton后 添加Button的点击监听,重写点击事件追问
progressdialog.setCancelable(false);是对返回键来讲的吧,我这里是直接点击button关闭。
不知道怎么重写点击事件不关闭button啊,请高手指导一下。
progressdialog.setButton("TEXT", new OnClickListener()
@Override
public void onClick(DialogInterface dialog, int which)
//这里处理
);
在这里处理我知道,关键是怎么处理,实际上在onClick不写代码,默认也会去关闭progressdialog的。
追答看了下, 确实不行, 这个Button是hide Button,点击后会自动调用progressDialog.hide()
建议你用Dialog自定义实现
请教C#/.net高手,用VS结合源码管理团队协作开发,如何处理引用的dll在不同机器路径不一样的问题?
比如,项目需要引用VS默认安装路径下的某些dll,但不同的开发人员可能把VS安装到不同路径,那么程序员A嵌入后获取最新不一定能编译通过。再假定引用的dll也许只是一两个,但依赖其他没引用的dll有几百M。
你们是如何解决这个问题,请有实践经验的来!
2. 引用第三方库,一般是浏览文件的形式选中dll,这时你应该在项目文件夹中专门建一个文件夹来存放dll,然后再引用这个文件夹中的dll,如下面的Lib文件夹,这样vs会自动使用相对目录引用。
3. 使用nuget插件管理引用,比较方便,它其实也是在项目文件夹中新建了一个packages目录存放下载的dll。
4. 如果项目中不引用,直接放到bin目录下也可以,不过一般bin目录不会纳入版本管理的范围。
<ItemGroup>
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\\packages\\EntityFramework.6.1.1\\lib\\net45\\EntityFramework.dll</HintPath>
</Reference>
<Reference Include="EntityFramework.SqlServer">
<HintPath>..\\packages\\EntityFramework.6.1.1\\lib\\net45\\EntityFramework.SqlServer.dll</HintPath>
</Reference>
<Reference Include="log4net, Version=1.2.12.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\\Lib\\log4net.dll</HintPath>
</Reference>
<Reference Include="MongoDB.Bson, Version=1.3.1.4349, Culture=neutral, PublicKeyToken=f686731cfb9cc103, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\\Lib\\MongoDB.Bson.dll</HintPath>
</Reference>
<Reference Include="MongoDB.Driver, Version=1.3.1.4349, Culture=neutral, PublicKeyToken=f686731cfb9cc103, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\\Lib\\MongoDB.Driver.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json">
<HintPath>..\\Lib\\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Data" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Drawing" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Web" />
<Reference Include="System.Web.ApplicationServices" />
<Reference Include="System.Web.DynamicData" />
<Reference Include="System.Web.Entity" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Extensions.Design" />
<Reference Include="System.Xml" />
<Reference Include="System.Configuration" />
<Reference Include="System.Web.Services" />
<Reference Include="System.EnterpriseServices" />
<Reference Include="System.Web.Mobile" />
<Reference Include="System.Xml.Linq" />
</ItemGroup> 参考技术A 直接在项目文件夹下建一个文件夹,把引用的dll放进去,或者建一个项目,引用dll,原来的项目引用此项目即可 参考技术B
不安装到指定目录者,一律开除?
参考技术C 用相对路径呀,不用绝对路径。以上是关于请教高手android开发中progressdialog按确定按钮时不关闭的一个问题?的主要内容,如果未能解决你的问题,请参考以下文章