Intereting Posts
Неизвестный код ошибки при установке приложения «-505» PHP – RegEx Соответствующие номера телефонов с кодом страны или без нее Восстановить диспетчер аварийных сообщений после перезагрузки телефона Сделать предпочтение отключенным, но регистрировать клики Расширяемые списки в Android, я хочу, чтобы только один родительский список расширялся за раз Android Поместить анимацию в страницу прокрутки в пейджере просмотра с использованием фрагмента Нет Реализация найдена для родного UnsatisfiedLinkError Exception Android JNI Не получать обратные вызовы CountDownTimer в службе Непоследовательность minSdkVersion для библиотек (Android Studio 0.5.1 + Gradle 0.9) Android ListView запускает событие в выпуске Long Long Release Приложение Intraweb HTML5, git и база данных – они сочетаются? NotificationListenerService: NullPointerException в getActiveNotifications Приложение, вызывающее принудительное закрытие в Application Manager OBD2 – симулятор Bluetooth ELM327 Android: ящик для навигации по нескольким действиям

Android угасает анимацию для tablerow

У меня есть TableRow с TextView . Вот xml для него.

 <TableRow android:layout_height="fill_parent" android:layout_gravity="bottom" android:layout_width="fill_parent" android:background="#BF000000"> <TextView android:id="@+id/topText" android:layout_height="wrap_content" android:textColor="#FFFFFF" android:textSize="19sp" android:background="#BF000000" android:layout_gravity="center_horizontal" android:text="@string/text_searchword" android:layout_width="fill_parent"> </TextView> </TableRow> 

Я хочу сделать строку таблицы невидимой с эффектом затухания при нажатии кнопки и наоборот. Как мне это сделать?

    Любой View ( TableRow ) может иметь прикрепленную к нему TableRow анимацию, но вам нужно будет иметь возможность ссылаться на ваш вид в коде, поэтому для строки потребуется идентификатор:

     <TableRow android:id="@+id/my_row" android:layout_height="fill_parent" android:layout_gravity="bottom" android:layout_width="fill_parent" android:background="#BF000000"> <TextView android:id="@+id/topText" android:layout_height="wrap_content" android:textColor="#FFFFFF" android:textSize="19sp" android:background="#BF000000" android:layout_gravity="center_horizontal" android:text="@string/text_searchword" android:layout_width="fill_parent"> </TextView> </TableRow> 

    Теперь вы можете ссылаться на строку непосредственно в вашем Java-коде где-нибудь (например, onCreate() ), так как

     View row = findViewById(R.id.my_row); 

    Заметьте, я не использую его как TableRow . Вы могли бы, если вам нужно делать с ним что-то другое, но для того, чтобы просто установить видимость, оставив его как View, все в порядке. Затем просто создайте метод нажатия кнопки следующим образом:

     public void onClick(View v) { View row = findViewById(R.id.myrow); if(row.getVisibility() == View.VISIBLE) { row.startAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out)); row.setVisibility(View.INVISIBLE); } else { row.startAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in)); row.setVisibility(View.VISIBLE); } } 

    Fade in and Fade out – это стандартные анимации, определенные в пакете Android, вам не нужно их создавать самостоятельно, просто загрузите их с помощью AnimationUtils.loadAnimation() . В этом примере нажатие одной и той же кнопки просто переключается между постепенным исчезновением и постепенным исчезновением в зависимости от того, видится ли вид View.

    Надеюсь, это поможет!