2015-02-13 3 views
2

Мне просто интересно, как я сделал бы кнопку на своей странице, чтобы перейти на другую страницу для моего приложения. Я новичок, поэтому, если вы могли бы объяснить, как все это работает и куда оно идет, это очень поможет. PS Я использую андроид-студию, если это имеет значение, и это код, который у меня есть до сих пор в моем файле fragment_main.xml. Я не ввели никакого кода в .javaКак создать кнопку на другой странице для моего приложения

<TextView android:text="@string/hello_world" 
    android:id="@id/text" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 
<ImageButton 
    android:id="@+id/firstbutton" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/homebutton" 
    android:layout_below="@+id/text"/> 

+1

Если бы я тебя, я объявляю кнопку в Java и установить местоположение в Java, так что вы можете передать его от фрагмента до фрагмента. –

+0

Вам нужно создать новую страницу или новое мероприятие? – cheloncio

ответ

0

Вы можете объявить мнения и объекты динамически в Java, а затем передать кнопки от фрагмента к фрагменту (или активность в деятельности, в зависимости от вашего приложения).

Объявить Relative Layout с кнопкой, например:

import android.support.v7.app.ActionBarActivity; 
import android.os.Bundle; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.widget.Button; 
import android.widget.RelativeLayout; 

public class JavaLayoutActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    Button myButton = new Button(this); 
    RelativeLayout myLayout = new RelativeLayout(this); 
    myLayout.addView(myButton); 
    setContentView(myLayout); 
} 

Это не набор свойств или ничего, я просто использовать это как доказательство концепции.

XML упрощает работу с дизайном пользовательского интерфейса, потому что вам не нужно управлять им в коде, но это один случай, когда он является исключением. Если вам нужны объекты динамического интерфейса, вам нужно использовать Java.

+0

Не могли бы вы объяснить, где поставить этот код, потому что в моей java для моей основной деятельности у него много фрагментов, и я не знаю, куда его вставить. Также как мне ссылаться на другие страницы. извините, если я задаю очевидные вопросы – Noobcoder

+0

Честно говоря, я на работе и не успеваю написать целое приложение прямо сейчас. Если вы не знаете, что такое метод onCreate, вам нужно прочитать книгу или сделать больше интернет-исследований. Вопросы, которые вы только что просили, легко поддаются любой из этих вещей. –

0

Вместо того чтобы создать представление динамически, вы должны получить свой вид активности

ImageButton button = (ImageButton) findViewById(R.id.firstButton) 

и назначить слушателя OnClick для ид

button.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     // start new Activity here 
    } 
}); 

Вы также можете сделать это в XML:

<ImageButton 
    android:id="@+id/firstbutton" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/homebutton" 
    android:onClick="sendMessage" 
    android:layout_below="@+id/text"/> 

с такой конфигурацией, в операции следует добавить способ:

public void sendMessage(View view) { 
    // start another activity here 
} 
0

В андроиде есть два метода, с помощью которых вы можете перейти от одной операции к другой.

1. Использование button.setOnClickListener()

Создание кнопки в xml файле.

<Button 
android:id="@+id/button" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="Button" /> 

Теперь установите слушатель событий для кнопки в файле .class

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

button.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 

     //set the event you want to perform when button is clicked 
     //you can go to another activity in your app by creating Intent 
     Intent intent = new Intent(getApplicationContext, Activity2.class); 
     startActivity(intent); 
    } 
}); 

2. Использование <android:onClick="goNext">

Поместите onClick как атрибут кнопки вы создали в xml файле ,

<Button 
android:id="@+id/button" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="Button" 
android:onClick="goNext" /> 

Теперь в файле .class определить событие для этой кнопки, как,

goNext() { 
    Intent intent = new Intent(getApplicationContext, Activity2.class); 
    startActivity(intent); 
} 
Смежные вопросы