簡體   English   中英

“MainActivity()”不能應用於“(android.content.Intent)”

[英]'MainActivity()' cannot be applied to '(android.content.Intent)'

我怎么解決這個問題?

我的代碼:

public class MainActivity extends AppCompatActivity {

    private ImageView iconImage;
    private LinearLayout linearLayout;
    private Button register;
    private Button login;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        iconImage = findViewById(R.id.icon_image);
        linearLayout = findViewById(R.id.linear_layout);
        register = findViewById(R.id.register);
        login = findViewById(R.id.login);

        linearLayout.animate().alpha(0f).setDuration(1);

        TranslateAnimation animation = new TranslateAnimation(0,0,0,-1000);
        animation.setDuration(1000);
        animation.setFillAfter(false);
        animation.setAnimationListener(new myAnimationListener());

         iconImage.setAnimation(animation);

         register.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
                 new MainActivity(new Intent(MainActivity.this, RegisterActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP));  **Here saying that is create constructor**
             }
         });

         login.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
                 new MainActivity(new Intent(MainActivity.this, LoginActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP));**Here saying that is create constructor**
             }
         });
    }
    private class myAnimationListener implements Animation.AnimationListener{
        @Override
        public void onAnimationStart(Animation animation) {
        }

        @Override
        public void onAnimationEnd(Animation animation) {
             iconImage.clearAnimation();
             iconImage.setVisibility(View.INVISIBLE);
             linearLayout.animate().alpha(1f).setDuration(1000);
        }

        @Override
        public void onAnimationRepeat(Animation animation) {

        }
    }
}

如果我在MainActivity(new Intent(MainActivity.this, LoginActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP)); 它顯示錯誤是預期的方法調用。 如何解決此錯誤?

代替:

new MainActivity(new Intent(MainActivity.this, RegisterActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP));

和:

startActivity(new Intent(MainActivity.this, RegisterActivity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP));

(對於第二個new MainActivity()行也是如此)

請注意,大多數有關 Android 應用程序開發的書籍和入門課程都介紹了startActivity()的使用。 FWIW,這是我的一本免費書這是那本書中談論多個活動和startActivity()的章節

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM