1

问题是我做了一个应用程序,其中有图标..当我们点击图标时,它会改变它的图像..(即它会发光)。并打开另一个活动..但是当按下返回时,它仍然处于发光状态..所以我想在按下返回时将其恢复为原始状态

package sditm.app;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.Toast;

public class page1 extends Activity {
/** Called when the activity is first created. */
ImageView about;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.page1);


    about=(ImageView)findViewById(R.id.imageView6);



    about.setClickable(true);




   about.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-gener2ated method stub
            about.setImageResource(R.drawable.helps);
            Intent i=new Intent(getApplicationContext(),aboutActivity.class);
            startActivity(i);
            Toast.makeText(getApplicationContext(), "Enter all fields", Toast.LENGTH_SHORT).show();
            about.setImageResource(R.drawable.help);

        }
    });



}
}
4

6 回答 6

1

用于onResume()恢复图像以前的状态:

 @Override  
    protected void onResume() {  
        about.setImageResource(R.drawable.imageView6);
        super.onResume();  
    }  
于 2012-05-11T04:35:02.807 回答
0

在您的主要活动中覆盖 onResume() 方法并在按下返回时执行您实际想要的操作,然后尝试。

于 2012-05-11T04:33:05.793 回答
0

只需通过此活动生命周期

您还可以使用 onResume() ,它可以在您想要返回 Activity 时为您提供帮助。

于 2012-05-11T04:33:18.883 回答
0

您可以在 OnbackPressed() 中完成当前活动并重新开始此活动。当您按下返回按钮时,将调用此方法。或者您可以尝试将 onTouch 事件用于图标图像

about.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if(event.getAction()==MotionEvent.ACTION_UP)
            {
                 about.setImageResource(R.drawable.help);

                 Intent i=new Intent(getApplicationContext(),aboutActivity.class);
                startActivity(i);


            }
            if(event.getAction()==MotionEvent.ACTION_DOWN)
            {
                 about.setImageResource(R.drawable.help);
            }
            return false;
        }
    });

它可能会帮助你..

于 2012-05-11T04:34:24.980 回答
0

您可以使用选择器为不同的状态定义不同的图像,比如正常、聚焦、按下。

否则,您可以使用 onStart 方法,只要您的活动在窗口上,就会调用此方法。

于 2012-05-11T04:35:25.947 回答
0

代替 ImageView 使用可以使用按钮,并且您可以自定义更改每个事件中的按钮颜色或图像...点击此链接..单击此处

于 2012-05-11T04:35:42.873 回答