Есть ли код для Snackbars в Android L или мы ожидаем, что они сами их реализуем?
На веб-сайте дизайна материалов упоминается новый похожий на тост элемент, называемый Snackbar: http://www.google.com/design/spec/components/snackbars-and-toasts.html
Документация SDK для предварительного просмотра Android L (извините, что не может ссылаться, поскольку она доступна только для загрузки) не упоминает о Snackbar в списке классов или в качестве модификатора в документации класса Toast. Я пропустил что-то очевидное или мне нужно создать собственный Snackbar.java?
Ответы
Ответ 1
Обновление 2015-05-29:
Google выпустила библиотеку поддержки дизайна, которая включает Snackbar и другие виджеты Material Design.
Закусочная библиотека, упомянутая в исходном ответе, теперь устарела.
Оригинальный ответ
Я уверен, что Google в конечном итоге включит его в будущий SDK вместе с плавающей кнопкой Action, которая также отсутствует в SDK предварительного просмотра.
Как отметил @friedrich nietzche, я внедрил библиотеку для включения Snackbar
в ваш проект.
https://github.com/nispok/snackbar
Надеюсь, что это поможет!
Ответ 2
FWIW,
Похоже, что в L Developer Preview нет реализации Snackbar
. Я также внедрил библиотеку Snackbar с намерением быть как можно ближе к руководство по разработке материалов, как я могу. Спасибо.
Ответ 3
Маби взглянем на это здесь.
http://www.williammora.com/2014/08/snackbar-android-library.html
Я предполагаю, что родная версия появится в sdk в конце концов. Это немного странно, я согласен.
Ответ 4
Snackbar - это просто Crouton с некоторыми полями. Crouton в его текущей форме поддерживает только добавление к началу (0-й элемент) ViewGroup, однако вы можете найти очень "бланк" для Crouton, DownUnderMode, в мой GitHub.
Просто будьте осторожны, что официальная библиотека Crouton и версия DownUnderMode немного не синхронизированы (что, мы надеемся, будет исправлено в 2058 году, когда будет принят запрос на вывод DownUnderMode).
Ответ 5
Использование библиотеки дизайна, которую мы можем реализовать для всех версий Android 2.1 вперед.
Вот пример рабочего кода http://www.feelzdroid.com/2015/06/snackbar-android-example-using-design-support-library.html.
Если вам нужна помощь, оставьте комментарий.
Ответ 6
Вот простой способ реализовать snackbar в android
Шаг 1. Добавьте библиотеку поддержки 23 и скомпилируйте свой проект с помощью
compile 'com.android.support:appcompat-v7:23.0.1'
Шаг 2. Добавьте расположение координат в файл активности
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
</android.support.design.widget.CoordinatorLayout>
Шаг 3. Теперь добавьте следующий код в свой MainActivity.java для реализации snackbar
public class MainActivity extends AppCompatActivity {
CoordinatorLayout coordinatorLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
coordinatorLayout = (CoordinatorLayout) findViewById(R.id.coordinatorLayout);
ShowSnack();
}
public void ShowSnack() {
Snackbar snackbar = Snackbar.make(coordinatorLayout, "Snackbar Label", Snackbar.LENGTH_LONG);
snackbar.setAction("Action", new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "Action", Toast.LENGTH_LONG).show();
}
});
snackbar.setActionTextColor(Color.RED);
View snackbarView = snackbar.getView();
snackbarView.setBackgroundColor(Color.DKGRAY);
TextView textView = (TextView) snackbarView.findViewById(android.support.design.R.id.snackbar_text);
textView.setTextColor(Color.YELLOW);
snackbar.show();
}
}
Надеюсь, это сработает для вас.
Для получения дополнительных уроков от android обратитесь к этому блогу: Trinity Tuts