簡體   English   中英

使用Android Studio的人可以告訴我該怎么做嗎?

[英]Can someone who uses android studio tell me what to do?

單擊按鈕時我的應用程序關閉,有人知道為什么嗎? 如果發現任何錯誤,請告訴我;)此活動約為兩個按鈕,當按下這些按鈕時,將顯示一個TimePickerDialog並節省時間。

這是我的代碼:

package app.alexdickson.com.workout1;

import android.app.Dialog;
import android.app.TimePickerDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageButton;
import android.widget.TimePicker;
import android.widget.Toast;


public class Main2Activity extends AppCompatActivity implements   View.OnClickListener{
ImageButton botoFlexio;
ImageButton botoAbdominals;
static final int DIALOG_ID = 0;
int hour_x;
int minute_x;
int hourDefinitivaFlexio;
int minuteDefinitvaFlexio;
int hourDefinitivaAbs;
int minuteDefinitivaAbs;

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);

    botoFlexio = (ImageButton) findViewById(R.id.botoFlexio);
    botoAbdominals =  (ImageButton) findViewById(R.id.botoAbdominals);
 botoFlexio.setOnClickListener(this);
 botoAbdominals.setOnClickListener(this);


}

@Override
public void onClick(View v) {
    switch (v.getId()){
        case R.id.botoFlexio:
            botoFlexio.setBackgroundResource(R.drawable.flexioclicat);
            showDialog(DIALOG_ID);
            hourDefinitivaFlexio = hour_x;
            minuteDefinitvaFlexio = minute_x;
            break;

        case R.id.botoAbdominals:
            botoFlexio.setBackgroundResource(R.drawable.abdominalsclicat);
            showDialog(DIALOG_ID);
            hourDefinitivaAbs = hour_x;
            minuteDefinitivaAbs = minute_x;
            break;

    }
}

@Override
protected Dialog onCreateDialog(int id) {
    if (id == DIALOG_ID)

        return new TimePickerDialog(Main2Activity.this, kTimePickerListener, hour_x, minute_x, true);
    return null;
}

protected TimePickerDialog.OnTimeSetListener kTimePickerListener =
        new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                hour_x = hourOfDay;
                minute_x = minute;
                Toast.makeText(Main2Activity.this, hour_x + ": " + minute_x, Toast.LENGTH_LONG).show();
            }
        };

這是我的xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout   xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="2"
android:orientation="horizontal"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >

<ImageButton
    android:layout_width="0dp"
    android:layout_height="400dp"
    android:layout_weight="1"
    android:id="@+id/botoAbdominals"
    android:background="@drawable/abdominals"
    android:contentDescription="ImatgeAbdominals"
    android:layout_marginTop="50dp"
    android:layout_marginRight="10dp"
    android:layout_marginLeft="10dp"
    />


<ImageButton
    android:layout_width="0dp"
    android:layout_height="400dp"
    android:layout_weight="1"
    android:id="@+id/botoFlexio"
    android:layout_gravity="top"
    android:layout_marginTop="50dp"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:background="@drawable/flexio"
    android:contentDescription="ImatgeFlexio"
    />

謝謝你的幫助 !!!!

初始化按鈕后,將按鈕注冊為監聽器。

 botoFlexio.setOnClickListener(this);
 botoAbdominals.setOnClickListener(this);

您需要將偵聽器設置為ImageButton

例如:

@Override
protected void onCreate(Bundle savedInstanceState) {
    .... 
    botoFlexio.setOnClickListener(this);
    botoAbdominals.setOnClickListener(this);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM