我想更改微调器的下拉菜单背景颜色而不更改微调器本身的背景颜色(它是透明的).可能吗?
我有asynktask,显示progressDialog并在doInBackground方法中更新其值.方法代码:
@Override
protected void onPreExecute() {
progress = new ProgressDialog(cont);
progress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progress.setIndeterminate(true);
progress.setTitle(cont.getResources().getString(R.string.pleaseWait));
progress.setMessage(cont.getResources().getString(R.string.loadingImages));
progress.show();
super.onPreExecute();
}
@Override
protected String doInBackground(Void... arg0) {
progress.setProgress(2);
//do some work on the database and network
progress.setProgress(25);
//Do some extra work
for(int i = 0; i < itemImagesList.size(); i++){
publishProgress((int) ((i / (float) itemImagesList.size()) * 100));
//Do somework
}
}
@Override
protected void onProgressUpdate(Integer... prog) {
progress.setProgress(prog[0]);
}
@Override
protected void onPostExecute(String result) {
progress.dismiss();
super.onPostExecute(result);
}
Run Code Online (Sandbox Code Playgroud)
progressDialog值根本不会改变!如果我尝试使用以下方法设置对话框消息:
progress.setMessage("At item "+i);
Run Code Online (Sandbox Code Playgroud)
如果我把它放在方法的中间会发生一些异常,但在第一次它工作正常!
怎么了?
我正在将一个String转换为一个日期,然后将其转换为整数值以使日期之间的比较更容易.这是我的代码:
SimpleDateFormat format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz",Locale.US);
lastModified = "Sun, 02 Oct 2011 18:38:26 GMT";
Date date = format.parse(lastModified);
lastModifiedDate = (int) date.getTime();
Run Code Online (Sandbox Code Playgroud)
然后,我打印机lastModifiedDate,它是(-974253872),我知道它应该是1970年1月1日以毫秒为单位的时间,但它是负值,所以发生了什么?
谢谢你的帮助.