1

我正在尝试ImageView通过在屏幕上移动手指来更改 a 的 alpha。我有一个OnTouchListener并且MotionEvent.ACTION_MOVE我已经把下面的代码。Log显示移动手指时 alpha 值变化很好,但setAlpha方法不会改变视图的 alpha。图像仅出现一次,具有随机 Alpha 透明度并保持不变。我究竟做错了什么?

public boolean onLongClick(View v) {
    if(v.getId() == R.id.button2){          
        longClicked = true;                 
    }
}

private OnTouchListener dialpadTouchListener = new OnTouchListener() {
    public boolean onTouch(View view, MotionEvent event) {
        if (event.getAction() == MotionEvent.ACTION_MOVE){
            if (longClicked) {
                mainView.addView(msg, msgParams);
                mainView.addView(remove, removeParams);
                longClicked = false;
            }
            int alpha = (int)(viewY - event.getRawY());
            msg.setAlpha(alpha);
            Log.i(TAG,"Alpha set to " + alpha);
            return true;
        }
    }
}
4

0 回答 0