Как создать listView, который рисует из нижней части упражнения?
Я создаю приложение и хочу нарисовать свой listView снизу или аналогичный объект, который можно нарисовать снизу, и возможность выбирать из его параметров.
Я попытался установить положение Y, определить layoutParams при настройке listView, используя гравитацию GravityCompact.START|Gravity.BOTTOM, stackFromBottom="true", я даже пытался предварительно настроить свой ListView, но потому что я использую listView для разных адаптеров с разными Количество предметов это в основном начинается откуда-то в центре вида.
Я ожидаю, что мне удастся нарисовать мой listView снизу, когда он выровнен по низу, или даже использовать другую опцию android, чтобы нарисовать вид снизу, содержащий несколько кликабельных элементов.
Спасибо!
2 ответа
Насколько я понимаю твой вопрос. Вам необходимо реализовать нижний лист. Который может быть вытянут снизу и может содержать представление списка. Существует два типа модальных и постоянных нижних листов, чтобы узнать больше, перейдите по этой ссылке.
Это код, который вам нужно написать для реализации нижнего листа в вашем приложении.
создайте файл Java с именем BottomSheet и файл макета с именем bottom_sheet.xml.
Java-файл будет выглядеть следующим образом.
public class BottomSheet extends BottomSheetDialogFragment {
AdapterMessage adapterMessage;
ArrayList<MessageModel> messageList;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.bottom_sheet, container, false);
return view;
}
}
А затем реализовать свой listView в этом файле и макете.
Для вызова нижнего листа вы можете использовать следующую команду.
BottomSheet bottomSheet = new BottomSheet();
bottomSheet.show((getSupportFragmentManager() ,"bottom sheet message");
Для некоторого надлежащего учебника о том, как использовать нижний лист
Я думаю, вам нужен перевернутый список в вашем списке. Для этого сделайте это в вашем адаптере:
String item = getItem(getCount()-position-1);