How to start one activity from Customized View

2019-04-20 09:50发布

问题:

How to start one activity from another View (another activity View)

For example,

public class CorrectSmoothGloflo extends Activity {
  .......................
  setContentView(new Panel(this));
}


public class Panel extends View {

   //This view class contains some drawable operation
   // Here i want to start another Activity like this

   Intent i=new Intent(CorrectSmoothGloflo.this,Screen.class);
    startActivity(i);   
}

I cant do this operation. Because this is the View, that will not work, because View does not have startActivity(). How to implement this? please give some guidelines.

回答1:

Obtain a Context object and use its startActivity() method:

Context context = getContext();
Intent i = new Intent(context, Screen.class);
context.startActivity(i);


回答2:

Setup an event handler to your "another activity View", and put the activity calling statements in it.



回答3:

Intent i=new Intent(CorrectSmoothGloflo.this,Screen.class); 
startActivity(i); 

as you want to start another activity so u need to pass current context and not the previous like i your example your are mentioned correctsmoothgloflo but it is panel.class

check this is help for u or not...