简体   繁体   中英

open MainActivity using another activity java class

I have made a simple canvas. but I want to make a new activity java class and open this activity using that activity java class. I have not used any layout files to make this class. I want to know how can i make new activity before starting this and I won't open this java activity class using that. I have some idea using intent we can open them. but I haven't any clear idea.

public class MainActivity extends AppCompatActivity {

    ArrayList<Double> values;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(new MyView(this));
    }

    public class MyView extends View{
        public MyView(Context context){
            super(context);
        }

        @Override
        protected void onDraw(Canvas canvas) {
            
            //Build Canvas
            super.onDraw(canvas);
            //Give the size
            int x = getWidth();
            int y = getHeight();
            int radius = 500;

            Paint paint = new Paint();
            paint.setStyle(Paint.Style.FILL);
            paint.setColor(Color.WHITE);
            canvas.drawPaint(paint);

            // Add Values to ArrayList
            values = new ArrayList<>();
            values.add(20.1);
            values.add(21.9);
            values.add(21.3);
            values.add(21.4);
            values.add(20.5);
            values.add(21.6);
            values.add(21.7);

            //Generate Mean
            double sum = 0.0;
            for (double n : values){
                sum+= n;
            }

            try {
                double mean = sum/values.size();

                //Set Colors on Values
                if (mean <=50.0){
                    paint.setColor(Color.parseColor("#001a1a"));
                    canvas.drawCircle(x/2,y/2,radius,paint);
                    //Status show Toast
                    Toast toast = Toast.makeText(MainActivity.this, "Wrong Input", Toast.LENGTH_LONG);
                    toast.getView().setBackgroundColor(Color.parseColor("#001a1a"));
                    toast.show();
                    Toast toast2 = Toast.makeText(MainActivity.this, "Please check about Values", Toast.LENGTH_LONG);
                    toast2.getView().setBackgroundColor(Color.parseColor("#001a1a"));
                    toast2.show();
                }
                else if (mean <=80.0){
                    paint.setColor(Color.parseColor("#87CEEB"));
                    canvas.drawCircle(x/2,y/2,radius,paint);
                    //Status show Toast
                    Toast toast = Toast.makeText(MainActivity.this, "Hart rate is Low", Toast.LENGTH_LONG);
                    toast.getView().setBackgroundColor(Color.parseColor("#87CEEB"));
                    toast.show();
                }
                else if(mean <=100.0){
                    paint.setColor(Color.parseColor("#B2BEB5"));
                    canvas.drawCircle(x/2,y/2,radius,paint);
                    //Status show Toast
                    Toast toast = Toast.makeText(MainActivity.this, "Hart rate is Normal", Toast.LENGTH_LONG);
                    toast.getView().setBackgroundColor(Color.parseColor("#B2BEB5"));
                    toast.show();
                }
                else if(mean<=140.0){
                    paint.setColor(Color.parseColor("#CD5C5C"));
                    canvas.drawCircle(x/2,y/2,radius,paint);
                    //Status show Toast
                    Toast toast = Toast.makeText(MainActivity.this, "Hart rate is Very High", Toast.LENGTH_LONG);
                    toast.getView().setBackgroundColor(Color.parseColor("#CD5C5C"));
                    toast.show();

                }else{
                    paint.setColor(Color.parseColor("#001a1a"));
                    canvas.drawCircle(x/2,y/2,radius,paint);

                    Toast toast = Toast.makeText(MainActivity.this, "Wrong Input", Toast.LENGTH_LONG);
                    toast.getView().setBackgroundColor(Color.parseColor("#001a1a"));
                    toast.show();
                    Toast toast2 = Toast.makeText(MainActivity.this, "Please check about Values", Toast.LENGTH_LONG);
                    toast2.getView().setBackgroundColor(Color.parseColor("#001a1a"));
                    toast2.show();

                }
            }catch (Exception e){
                Toast.makeText(MainActivity.this, "Please check Values", Toast.LENGTH_SHORT).show();
            }

        }
    }
}

You can create MainActivity2, and in AndroidManifest, change

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

from MainActivity to MainActivity2.

And in MainActivity2, using Intent to navigate to MainActivity

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM