Ошибка по намеренной деятельности в Android Studio.(Автоматически менять фон) - PullRequest
0 голосов

Всем привет и удачи.

Я использую Intent Activity в своем проекте.И есть ошибки с ним.Следующее: У меня есть список порядка действий:

A (Основной) -> B (Вход или Регистрация) -> C (Меню) -> D (ListFoodOfMenu) -> E (DetailsFood)

Из ABCD или во многих других порядках не возникает ошибка.

Но, поскольку DE имеет ошибку, фон, который я установил для макета xml, исчезает во всем приложении, заменяя его системойцвет.

У кого есть решение, чтобы помочь мне и что делать, чтобы справиться с этой ошибкой.Спасибо.

Это пользовательский интерфейс, когда нет ошибок, а затем пользовательский интерфейс неисправен:

Пользовательский интерфейс не неисправен

Пользовательский интерфейс неисправен

Это мой код Назначение:

AB:

btnSignUp.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent moveToSignUp = new Intent(getApplicationContext(), SignUpActivity.class);
                startActivity(moveToSignUp);
                finishActivity(1);
            }
        });

        btnSignIn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent moveToSignIn = new Intent(getApplicationContext(), SignInActivity.class);
                startActivity(moveToSignIn);
                finishActivity(1);
            }
        });

BC:

Intent moveToHome = new Intent(getApplicationContext(), Home.class);
                                    Common.currentUser = user;
                                    startActivity(moveToHome);

CD:

//Get CategoryID and send to new Activity:
                        Intent moveToFoodList = new Intent(getApplicationContext(), FoodListActivity.class);
                        //Because CategoryID is Key, so we just get key of this item:
                        moveToFoodList.putExtra("CategoryID", adapter.getRef(position).getKey());
                        startActivity(moveToFoodList);

DE:

//Start Activity FoodDetails
                        Intent moveToFoodDetails = new Intent(getApplicationContext(), FoodDetailsActivity.class);
                        moveToFoodDetails.putExtra("FoodId", searchAdapter.getRef(position).getKey());
                        // Send FoodId to FoodDetailsActivity
                        moveToFoodDetails.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
                        startActivity(moveToFoodDetails);

ED (в этот момент произошла ошибка):

btnCart.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                new Database(getApplicationContext()).addToCart(new Order(
                        "", //Id tự tăng
                        Common.currentUser.getPhone(),
                        FoodId,
                        currentFood.getName(),
                        numberButton.getNumber(),
                        currentFood.getPrice(),
                        currentFood.getDiscount()
                ));
               finish();
        Toast.makeText(FoodDetailsActivity.this, "Added To Cart", Toast.LENGTH_SHORT).show();
                    }
                });

Я боролся с этой ошибкой в ​​течение нескольких месяцев идо сих пор не могу понять, как это исправить.Мы с нетерпением ждем большой помощи от Pro.Искренне благодарю.

Ответы [ 2 ]

0 голосов
/ 31 мая 2018

Это потому, что у вас есть библиотека 'com.cepheuen.elegant-number-button:lib:1.0.2', и у этой библиотеки также есть фоновый ресурс с именем background.xml, который переопределяется с вашим background.jpg, когда вы достигаете FoodDetailsActivity экрана.

Решение : Переименуйте Ваш background.jpg в background_1.jpg.

0 голосов
/ 31 мая 2018

Не используйте getApplicationContext () во всех местах.

Используйте объект Activity, такой как SignUpActivity.this или SignInActivity.this.

...