2013-11-25 3 views
2

У меня есть мое первое назначение класса в программировании приложений для Android, надеюсь, вы, ребята, могли бы с этим помочь.Сделать текстовое изображение видимым, нажав кнопку

Мне нужно подключить код к кнопке, поэтому, когда я нажму на него, появится текстовое изображение.

В моей XML-файл у меня есть

<Button 
    android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/textView1" 
    android:layout_alignParentBottom="true" 
    android:layout_marginBottom="22dp" 
    android:text="@string/ok_knappen" 
    android:textColor="@color/button_dark_text" 
    android:onClick="b" 
    /> 

<TextView 
    android:id="@+id/textView3" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/button1" 
    android:layout_alignLeft="@+id/textView2" 
    android:layout_marginBottom="15dp" 
    android:text="@string/Beskrivning" 
    android:visibility="invisible" /> 

В моей деятельности я

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    final TextView t=(TextView)findViewById(R.id.textView3); 
    Button b= (Button) findViewById(R.id.button1); 

    b.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
     t.setVisibility(View.VISIBLE); 
     } 
    }); 
} 

не произошло никаких ошибок. Мой текст невидим, но когда я нажимаю кнопку, ничего не происходит. Что не так?

+0

Я удивлен, что вы не получите сообщение об ошибке - попробуйте удалить этот 'android: onClick =" b "' Это устанавливает onClickListener как метод с именем 'b', который не существует. – Simon

+0

И если вы попробуете свой xml без 'android: visibility =" invisible "', ваш текст будет видимым? – gahfy

ответ

0

Попробуйте удалить атрибут onClick с помощью кнопки.

Атрибут onClick должен сопровождаться методом. Этот метод «b» не существует, но поскольку вы установили onClickListener в свой код, мне кажется, что здесь не кажется необходимым.

0

Удалить запись onClick в XML или создать метод с подписями «public void b (View v)» в вашей деятельности. Назначение onClick в XML пытается найти метод с таким прослушивателем. Возможно, что XML переопределяет Java-назначение слушателя onClick.

2

В TextView добавить:

android:visibility="invisible" 

В Java-код:

public void b(View view) { 

    EditText numerField = (EditText) findViewById(R.id.button1); 
    TextView tex = (TextView) findViewById(R.id.textView2); 
    tex.setVisibility(View.VISIBLE); 
    //do sth 
} 
1

просто изменить ваш TextView дается

android:visibility="gone" 
Смежные вопросы