0

我是android开发的新手。

我在布局中有一个图像。我为该图像使用了缩放动画。我能够在特定点停止图像的缩放。现在我想在另一个 clicklistener 上调整该图像的大小。

怎么做?如果有任何想法,请帮助。

这是我的代码。

final ImageView img_graph= (ImageView)findViewById(R.id.graph01);
   final Animation AnimationScale= AnimationUtils.loadAnimation(this,R.anim.anim_scale);
   final Animation AnimationScale_reverse= AnimationUtils.loadAnimation(this,R.anim.anim_scale_reverse);


        if(flag ==FLAG_SCALE_IN) { 
            if(resp==0){
   img_graph.setOnClickListener(new ImageView.OnClickListener(){

       public void onClick(View arg0) {

        // TODO Auto-generated method stub

         img_graph.setBackgroundResource(R.drawable.page01_graph);
         img_graph.startAnimation(AnimationScale);
       }});     
            }     
            }      
        if(flag==FLAG_SCALE_OUT) { 
            if(resp==1){
   img_graph.setOnClickListener(new ImageView.OnClickListener(){

       public void onClick(View arg0) {

        // TODO Auto-generated method stub

         img_graph.setBackgroundResource(R.drawable.page01_graph);
         img_graph.startAnimation(AnimationScale_reverse);
       }});
            }
            }   
4

2 回答 2

3

我们不能在同一个列表器中使用 if else 来处理这种情况吗?

   img_graph.setOnClickListener(new ImageView.OnClickListener(){

       public void onClick(View arg0) {


                      if(resp==0 && flag ==FLAG_SCALE_IN) { 
                             img_graph.setBackgroundResource(R.drawable.page01_graph);
                             img_graph.startAnimation(AnimationScale);
                      }else if( resp==1 &&flag ==FLAG_SCALE_OUT) {
                           img_graph.setBackgroundResource(R.drawable.page01_graph);
                            img_graph.startAnimation(AnimationScale_reverse);
                          }
                }
       }});     
于 2012-05-31T05:32:09.590 回答
1

更多优化:

public void imageViewClick(View v)
{
    if(flag==FLAG_SCALE_IN && resp==0)
        {
        }
        else if(flag==FLAG_SCALE_OUT && resp==1)
        {                     
        }
}
于 2012-05-31T05:40:02.320 回答