0

好的,所以我有我的数组,我正在调用我的数组,但它不会更新画布的背景?我究竟做错了什么?也许一些教程链接在这里会有所帮助。谢谢。

             int[] myImageList = {
            R.drawable.lettersa, R.drawable.lettersb,
            R.drawable.lettersc, R.drawable.lettersd,
            R.drawable.letterse, R.drawable.lettersf, R.drawable.lettersg,
            R.drawable.lettersh, R.drawable.lettersi, R.drawable.lettersj,
            R.drawable.lettersk, R.drawable.lettersl, R.drawable.lettersm,
            R.drawable.lettersn, R.drawable.letterso, R.drawable.lettersp,
            R.drawable.lettersq, R.drawable.letterss, R.drawable.letterst,
            R.drawable.lettersu, R.drawable.lettersv, R.drawable.lettersw,
            R.drawable.lettersx, R.drawable.lettersy, R.drawable.lettersz};


                 mNextBtn.setOnClickListener(new OnClickListener() {
                    public void onClick(View v) {
                        // TODO Auto-generated method stub
                        int i;
                        if (mNextBtn.equals(mNextBtn)) {

                            for   (i=0;i<myImageList.length;i++)
                            {
                                         mSCanvas.setBackgroundResource(i);
                            }

                            return;
                        }   

                        mNextBtn.setEnabled(mSCanvas.isUndoable());
                        }

                });
4

1 回答 1

1

基本上我希望画布背景更改为单击按钮后要跟踪的下一个字母

我推荐一种不同的方法:

mNextBtn.setOnClickListener(new OnClickListener() {
    int i = 0;
    public void onClick(View v) {
        mSCanvas.setBackgroundResource(myImageList[i]);
        i++;
        if(i >= myImageList.length)
             i = 0;

        // I'm not sure what you want to do here, so I left it:
        mNextBtn.setEnabled(mSCanvas.isUndoable());
        return;
    }
});

我改变了三个要点:

  1. 一次只设置一个背景资源,循环在几毫秒内设置每个背景资源,并始终为您留下最后一个值。
  2. 可绘制资源myImageList[i]不在imSCanvas.setBackgroundResource()
  3. 我不知道这mNextBtn.equals(mNextBtn)是假的任何情况...
于 2013-03-26T14:34:14.010 回答