Измените supportActionBar для CollapsingToolbarLayout во фрагменте с BottomNavigationView - PullRequest
0 голосов
/ 19 апреля 2020

я вижу некоторые другие вопросы о скрытии supportActionBar, но не вижу никого о том, как скрыть с BottomNavigationView.

Моя проблема:

У меня есть одно основное действие для всего приложения (2, если быть более точным, одно только для открытия изображения), прежде чем изменить все на фрагменты У меня было одно действие (ProductDetail), в котором XML я установил тему с

<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>

Все шло идеально, пока я не заметил, что в другом действии я не могу получить доступ к представлению модели, которое я создал. Поэтому я решил изменить действие ProductDetail на фрагмент, но у меня есть тема с панелью действий, поэтому фрагмент остается таким:

enter image description here

Затем я думаю, это просто скрыть панель действий :

enter image description here enter image description here

В строке состояния отображается я думаю, это минимальный запас, потому что панель действий и NavigationBottomView получают нижнее поле от высоты панели действий, я думаю.

Кто-нибудь уже прошел это?

PS: я пробовал XML содержимого прокрутки устанавливает отрицательное поле, но безуспешно.

PS2: цель состоит в том, чтобы открыть сведения об элементе из различных перерабатывающих компаний и позволить пользователю добавить количество этого элемента и обновить sh модель представления для обновления sh список корзин. Если бы я мог, я бы использовал onActivityResult и просто передал количество в качестве аргумента для фрагмента, который вызывал, но у фрагмента нет startActivityForResult верно?

PS3: После того, как я написал PS2, я решил поискать о результатах и ​​фрагментах, и я увидел, что да, можно делать то, что я хочу, через startActivityForResult:

    @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    ...
    botao.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(getActivity(), SegundaActivity.class);
            startActivityForResult(intent, 1);
        }

    });
    ...
    return viewlayout;
}

    @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == getActivity().RESULT_OK && requestCode == 1) {
        String resposta = data.getStringExtra("resposta");
        Toast.makeText(getActivity(),"Mensagem Recebida da SegundaActivity:\n" + resposta, Toast.LENGTH_LONG).show();
    }
}

Второе задание:

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

    Button botao = (Button) findViewById(R.id.button1);     
    botao.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent devolve = new Intent();
        devolve.putExtra("resposta", "Resposta");
        setResult(RESULT_OK, devolve);
        finish();               
    });     
}

это помогает мне, но не отвечайте на этот вопрос о странной марже.

...