1
嗨,大家好我是android編程的新手,我有很多xml問題。幾個小時前我問你如何隱藏一個佈局,並且全部解決了Link。無論如何,我嘗試,我在許多其他問題隱藏和顯示一些ImageButtons但不僅ImageButtons不會出現,現在無論是佈局已經看到了希望展示:/如何隱藏和顯示一些ImageButton?
這是我的代碼:
public class Hide_Unhide extends Activity {
LinearLayout barrainfo;
ImageButton icotelefono;
ImageButton icoemail;
ImageButton icofacebook;
ImageButton icotwitter;
ImageButton icosito;
ImageButton prova;
public Hide_Unhide (View v){
barrainfo = (LinearLayout)v.findViewById(R.id.links_bar); //tutta la barra
icotelefono = (ImageButton) v.findViewById(R.id.telephone_icon); //pulsante chiamata
icoemail = (ImageButton) v.findViewById(R.id.email_icon); //pulsante nuova mail
icofacebook = (ImageButton) v.findViewById(R.id.facebook_icon); //pulsante facebook
icotwitter = (ImageButton) v.findViewById(R.id.twitter_icon); //pulsante twitter
icosito = (ImageButton) v.findViewById(R.id.sito_icon); //pulsante sito web
};
public void mostra_nascondi(int numero_di_informazioni, int info_number){ //numero di informazioni = 0 (no info) - 1 (si info)
/*if (numero_di_informazioni <= 0){ //info_number = identifica il social o il telefono o l'email
barrainfo.setVisibility(View.GONE); //se per l'info_number = 3 corrisponde un numero informazioni = 0
}else //il locale non ha l'email
{ //
barrainfo.setVisibility(View.VISIBLE); // - - - Schema Informazioni - - - - - - - - - -
// - - - - - - - - + - - - - - - - - - - - - - - -
}*/ // | 2: telefono | num_di_informazioni [0-1] |
// | 3: email | num_di_informazioni [0-1] |
// | 5: facebook | num_di_informazioni [0-1] |
// | 6: twitter | num_di_informazioni [0-1] |
// | 7: Google+ | num_di_informazioni [0-1] |
// | 8: Instagram | num_di_informazioni [0-1] |
// - - - - - - - - - - - - - - - - - - - - - - -
switch (info_number){
case 0:
if (numero_di_informazioni <= 0){
barrainfo.setVisibility(View.GONE);
}else
{
barrainfo.setVisibility(View.VISIBLE);
}
break;
case 2: //telefono
if(numero_di_informazioni <= 0)
{
icotelefono.setVisibility(View.GONE);
}else
{
icotelefono.setVisibility(View.VISIBLE);
}
break;
case 3: //email
if(numero_di_informazioni <= 0)
{
icoemail.setVisibility(View.GONE);
}else
{
icoemail.setVisibility(View.VISIBLE);
}
break;
case 5: //facebook
if(numero_di_informazioni <= 0)
{
icofacebook.setVisibility(View.GONE);
}else
{
icofacebook.setVisibility(View.VISIBLE);
}
break;
case 6: //twitter
if(numero_di_informazioni <= 0)
{
icotwitter.setVisibility(View.GONE);
}else
{
icotwitter.setVisibility(View.VISIBLE);
}
break;
case 7: //sito
if(numero_di_informazioni <= 0)
{
icosito.setVisibility(View.GONE);
}else
{
icosito.setVisibility(View.VISIBLE);
}
break;
}
}
}
XML代碼片段:
<LinearLayout
android:id="@+id/links_bar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/title_bar"
android:background="#222222"
android:orientation="horizontal"
android:gravity="center_horizontal|center_vertical|fill_horizontal"
android:visibility="gone">
<ImageButton
android:src="@drawable/telephone_icon"
android:id="@+id/telephone_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#222222"
android:visibility="gone"/>
<ImageButton
android:src="@drawable/email_icon"
android:id="@+id/email_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/telephone_icon"
android:background="#222222"
android:visibility="gone"/>
<ImageButton
android:src="@drawable/facebook_icon"
android:id="@+id/facebook_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/email_icon"
android:background="#222222"
android:visibility="gone"/>
<ImageButton
android:src="@drawable/twitter_icon"
android:id="@+id/twitter_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/facebook_icon"
android:background="#222222"
android:visibility="gone"/>
<ImageButton
android:src="@drawable/sito_icon"
android:id="@+id/sito_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/twitter_icon"
android:background="#222222"
android:visibility="gone"/>
</LinearLayout>
電話 「mostra_nascondi()」:
Hide_Unhide metodo = new Hide_Unhide(v);
int numero_informazioni=0;
tvnomeditta.setText(Dati_history[indice_riga][nome_luogo]); //Stampo il nome del posto
tvindirizzoditta.setText(Dati_history[indice_riga][indirizzo]); //Stampo il suo indirizzo
if(Dati_history[indice_riga][telefono].equals("")){ //scompare/appare se c'è il num di telefono
numero_informazioni=0;
}else
{
tot_informazioni++;
numero_informazioni++;
metodo.mostra_nascondi(numero_informazioni,telefono);
}
if(Dati_history[indice_riga][descrizione].equals("")){ //Se una descrizione esiste la stampo altrimenti
tvdescrizione.setText("Nessuna descrizione"); //scrivo "Nessuna Descrizione"
}else
{
tot_informazioni++;
numero_informazioni++;
tvdescrizione.setText(Dati_history[indice_riga][descrizione]);
}
if(Dati_history[indice_riga][email].equals("")){ //mostra/scompare icona mail
numero_informazioni = 0;
}else
{
tot_informazioni++;
numero_informazioni++;
metodo.mostra_nascondi(numero_informazioni,email);
}
if(Dati_history[indice_riga][facebook].equals("")){ //mostra/scompare icona facebook
numero_informazioni = 0;
}else
{
tot_informazioni++;
numero_informazioni++;
metodo.mostra_nascondi(numero_informazioni,facebook);
}
if(Dati_history[indice_riga][twitter].equals("")){ //mostra/scompare icona twitter
numero_informazioni = 0;
}else
{
tot_informazioni++;
numero_informazioni++;
metodo.mostra_nascondi(numero_informazioni,twitter);
}
if(Dati_history[indice_riga][sito].equals("")){ //mostra/scompare icona sito web
numero_informazioni = 0;
}else
{
tot_informazioni++;
numero_informazioni++;
metodo.mostra_nascondi(numero_informazioni,sito);
}
謝謝大家。
你沒有休息的情況下0 – tyczj 2014-10-08 14:00:57
@tyczj好..我糾正,但它無法正常工作。謝謝我編輯我的問題 – 2014-10-08 14:04:23
http://stackoverflow.com/questions/3975141/how-to-hide-imagebutton 看看這個鏈接 – user3738027 2014-10-08 14:08:21