После долгого времени, наконец, я узнал, как обновлять индикатор выполнения при нажатии кнопки. Этот код не работает для пряников. и все остальные ОС отлично работают. в случае любого вопроса вы можете попросить понравится !!!!Обновление индикатора выполнения Пока кнопка нажата
button.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
if(arg1.getAction()==MotionEvent.ACTION_DOWN){
arg0.post(rotationRunnable);
}
return false;
}
});
RotationRunnable Метод: -
private Runnable rotationRunnable = new Runnable() {
@Override
public void run() {
if (button.isPressed()) {
try{
if(mProgressStatus<100){
Thread.sleep(500);
mProgressStatus = doWork();
pB.setProgress(mProgressStatus);
}
}catch(Exception e) {
e.printStackTrace();
}
button.postDelayed(rotationRunnable, 40);
}
}
};
и, наконец DoWork Метод: -
private int doWork() {
// TODO Auto-generated method stub
Timer t=new Timer();
t.schedule(new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
mProgressStatus=mProgressStatus+1;
}
}, 1000);
time=mProgressStatus;
return mProgressStatus;
}
Итак, можете ли вы подтвердить вопрос: «Почему это не работает на пряников?» –
yup Я хочу, чтобы этот код также работал на Gingerbread, но устройства, работающие на Gingerbread OS, не смогли показать индикатор выполнения ..... –