Intereting Posts

Хотите сделать некоторые виды невидимыми во время выполнения в приложении для Android

Это мой основной .xml-файл:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5dip" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="@color/mbackground1" android:gravity="center_horizontal" android:text="@string/decode_label" android:padding="5dip" /> <TextView android:id="@+id/mytext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:background="@color/mbackground2" android:textColor="@color/mytextcolor" android:padding="5dip" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/continue_label" android:gravity="center_horizontal" android:textColor="@color/mytextcolor" android:padding="5dip" /> <Button android:id="@+id/webbutton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/web_button" android:textColor="@color/mytextcolor" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/continue_label1" android:gravity="center_horizontal" android:textColor="@color/mytextcolor" android:padding="5dip" /> <Button android:id="@+id/callbutton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/call_button" android:textColor="@color/mytextcolor" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/continue_label2" android:gravity="center_horizontal" android:textColor="@color/mytextcolor" android:padding="5dip" /> <Button android:id="@+id/emailbutton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/sendemail_button" android:textColor="@color/mytextcolor" /> </LinearLayout> 

Я хочу, чтобы на основе вывода во время выполнения он должен показывать только одно текстовое изображение и кнопку, соответствующие этому выводу. Im определяет макет в файле main.xml, а также я в этом поле.

Есть ли у кого-нибудь идеи. заранее спасибо

Solutions Collecting From Web of "Хотите сделать некоторые виды невидимыми во время выполнения в приложении для Android"

Я предполагаю, что вы знаете, как получить ссылку на определенные вами виды, например:

 Button button = (Button)findViewById(R.id.emailbutton) 

Вам нужно будет определить идентификатор для каждого представления, которое вы хотите использовать в коде, так же, как вы сделали это с помощью кнопки электронной почты:

 android:id="@+id/emailbutton" 

Чтобы настроить видимость вида, вы вызываете:

 button.setVisibility(View.GONE); 

У вас есть возможность установить видимость для INVISIBLE и VISIBLE . Затем вы можете играть с видимостью, как вам нравится. Разница между INVISIBLE и GONE заключается в том, что GONE удаляет вид из макета, а INVISIBLE «сохраняет» пространство, которое занимает этот вид.

Это можно увидеть в примерах API.

Чтобы удалить yourview в java-коде:

 Button btn=(Button)findViewById(R.id.btn); btn.setVisibility(View.GONE); 

Для прозрачного просмотра в Java-коде:

 Button btn=(Button)findViewById(R.id.btn); btn.setVisibility(View.INVISIBLE); 

Чтобы удалить ваш просмотр в файле Xml:

 <yourView android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone"/> 

К прозрачной кнопке в файле Xml:

 <yourView android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="invisible"/> 

Чтобы сделать вид видимым или невидимым, попробуйте следующее:

 yourView.setVisibility(View.GONE); yourView.setVisibility(View.VISIBLE); 

Использовать textView.setVisibility (View.GONE); – сделать View Gone и textView.setVisibility (View.INVISIBLE); – сделать вид INVISIBLE

Видимость вида можно изменить с помощью View.setVisibility() , для получения дополнительной информации просмотрите эту ссылку . Надеюсь это поможет.

Получите представление по ID и сделайте его невидимым. Например, для вашего текстового TextView:

 TextView my = (TextView) findViewById(R.id.mytext); // Get the view you want to manipulate my.setVisibility(View.INVISIBLE); // Make it invisible my.setVisibility(View.VISIBLE); // Make it visible again 

Всегда проверяйте документацию в первую очередь!