сделать такую кнопку при нажатии на котороюю под ней будет выскакивать другие кнопки или тексты java
Я начинающий android java разработчик и недавно столкнулся с такой проблемой что мне надо сделать такую кнопку при нажатии на котороюю под ней будет выскакивать другие кнопки или тексты вопрос состоит в том что я не знаю как это реализовать а помогите пожалуйста
Ответы (1 шт):
Довольно сложно дать определенный ответ используя только информацию из вопроса. Есть несколько вариантов:
- Динамически создавать кнопки или текстовые поля.
- Показывать/скрывать кнопки/текстовые поля которые указаны в xml
Первый вариант подразумевает что у вас динамическое кол-во кнопок и текстовых полей. Вот пример программного создания кнопки:
Button programmaticButton = new Button(this);
programmaticButton.setId(R.id.button2);
programmaticButton.setText("CREATED PROGRAMMATICALLY");
programmaticButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Programmatic Button is clicked",Toast.LENGTH_LONG).show();
}
});
LinearLayout linearLayout = findViewById(R.id.linearLayout);
linearLayout.addView(programmaticButton);
подобный вопрос на enSO.
Второй вариант подразумевает что у вас фиксированное кол-во кнопок/текстовых полей и поэтому вы можете заранее их указать в xml и просто потом показывать/скрывать. По поводу "выскакивания" - это нужно делать использую анимацию. Вот есть примеры анимации. И вот пример использования анимации:
view.animate()
.translationY(0)
.alpha(0.0f)
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
view.setVisibility(View.GONE);
}
});
туториал по анимированию