-2

我在 android 中有一系列按钮,我需要按顺序更改这些按钮的文本(慢慢地一个一个地)我怎样才能做到这一点?我不能在这里应用任何动画?

4

2 回答 2

0
Handler myHandler = new Handler(); 

// 你的按钮是这样的

int[] ButtonArray = {R.id.button1,R.id.button2.....};
String[] stringArray = {"Hi","Hello","oi"....};

 // get all the button
 private Button[] myButtons=new Button[buttonArray.length];

 for(int i = 0; i < buttonArray.length ; i++){
      myButtons[i] = (Button) findViewById(mAlphabetsId[i]); 

 }

//处理重复性任务的处理程序

............. 开始重复性任务

counterValue = 0;
Size =buttonArray.length; //Number of buttons
 myHandler.postDelayed(mMyRunnable, speed); 

.....................................

   private Runnable mMyRunnable = new Runnable()
{

    public void run()
    { 
        if(counterValue<Size){  
           myButtons[counterValue].setText(stringArray[CounterValue]);    
          myHandler.postDelayed(mMyRunnable, 1000);  //Call again with 1 sec delay
         counterValue++;
        }else{
             myHandler.removeCallbacks(mMyRunnable);
             counterValue=0;    
        }

    }
};

这段代码可能包含错误,因为我很匆忙。先试试看。

如果您遇到困难,请告诉我。

于 2013-01-03T04:45:35.017 回答
0

真的很难确切地说出你想在这里做什么,但一种选择可能是使用TimerTask你可以以你想要的任何间隔重复更改按钮的文本。您可以使用 afor loop来遍历按钮

于 2013-01-03T03:57:33.960 回答