简体   繁体   English

按钮错误viewflipper android

[英]button error viewflipper android

i`m trying to do android viewflipper. 我正在尝试做android viewflipper。 i have 3 views i would to be changed on button click (next & previous). 我有3个视图,单击按钮后(下一个和上一个),我将对其进行更改。 i wrote these code and the log said there is button widget error. 我写了这些代码,日志说有按钮小部件错误。 How to solve this? 如何解决呢?

my xml layout 我的xml布局

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" 
android:background="@drawable/radial_background">

<RelativeLayout
    android:id="@+id/relative_buy1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true">

    <Button
        android:id="@+id/buy_previous"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"> 
   </Button> 


    <Button
        android:id="@+id/buy_next"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/buy_previous"> 
    </Button>

     <Button
        android:id="@+id/buy_submit"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/buy_next"> 
     </Button>  

</RelativeLayout>

<RelativeLayout
    android:layout_alignTop="@id/relative_buy1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true">

    <ViewFlipper 
        android:id="@+id/ViewFlipper01"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content">

        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/buy_item_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true">
            </TextView>

            <EditText
                android:id="@+id/buy_item_name_et"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:layout_below="@id/buy_item_name">
            </EditText>         

        </RelativeLayout>

        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/buy_ques_category"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true">
            </TextView>

            <Button
                android:id="@+id/buy_food_cat_button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:layout_below="@id/buy_ques_category"> 
            </Button>    
            <Button
                android:id="@+id/buy_education_cat_button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:layout_below="@id/buy_food_cat_button"> 
            </Button>   
            <Button
                android:id="@+id/buy_personal_cat_button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:layout_below="@id/buy_education_cat_button">   
            </Button>   

        </RelativeLayout>

        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/buy_ques_cost"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true">
            </TextView>

            <EditText
                android:id="@+id/buy_ques_cost_et"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentRight="true"
                android:layout_below="@id/buy_ques_cost">
            </EditText>      

        </RelativeLayout>

    </ViewFlipper>
</RelativeLayout>

my activity 我的活动

package apps.questions;

import android.app.Activity;
import android.content.ContentValues;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.View.OnClickListener;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.ViewFlipper;
import apps.project.R;

public class BuyActivity extends Activity implements OnClickListener {

ViewFlipper vf;

private static final String FOOD = "Food/Drinks";
private static final String EDUCATION = "Education";
private static final String PERSONAL = "Personal";

Button food_cat;
Button education_cat;
Button personal_cat;
Button next;
Button previous;
Button submit;

TextView item_name;
TextView item_cost;
TextView item_cat;
EditText name;
EditText cost;

ContentValues cv;
String iName;
double iPrice;
String iCategory;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.buy_advice_layout);


    inflateView();

    /*food_cat.setOnClickListener(this);
    education_cat.setOnClickListener(this);
    personal_cat.setOnClickListener(this);*/
}

public void onAttachedToWindow() {
    super.onAttachedToWindow();
    Window window = getWindow();
    window.setFormat(PixelFormat.RGBA_8888);
}

private void inflateView() {
    // TODO Auto-generated method stub
    cv = new ContentValues();
    vf = (ViewFlipper) findViewById(R.id.ViewFlipper01);

    next = (Button)findViewById(R.id.buy_next);
    previous = (Button)findViewById(R.id.buy_previous);
    submit = (Button)findViewById(R.id.buy_submit);

    /*food_cat = (Button)findViewById(R.id.buy_food_cat_button);
    education_cat = (Button)findViewById(R.id.buy_education_cat_button);
    personal_cat = (Button)findViewById(R.id.buy_personal_cat_button);*/

    item_name = (TextView)findViewById(R.id.buy_item_name);
    item_name.setText("Please enter the name of the item you wish to buy");
    item_cat = (TextView)findViewById(R.id.buy_ques_category);
    item_cat.setText("Please select the category of the item you wish to buy by clicking on the category button");
    item_cost = (TextView)findViewById(R.id.buy_ques_cost);
    item_cost.setText("Please enter the price of the item you wish to buy");
    name = (EditText)findViewById(R.id.buy_item_name_et);
    cost = (EditText)findViewById(R.id.buy_ques_cost_et);


}

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
    if (v == next) {

        vf.setAnimation(AnimationUtils.loadAnimation(v.getContext(), R.anim.push_left_in));
        vf.showNext();
    }

    if (v == previous) {

        vf.setAnimation(AnimationUtils.loadAnimation(v.getContext(), R.anim.push_left_out));
        vf.showPrevious();
    }

    if (v == submit) {
        //vf.showPrevious();
    }

    if (v == food_cat) {
        iCategory = FOOD;
    }

    if (v == education_cat) {
        iCategory = EDUCATION;
    }

    if (v == personal_cat) {
        iCategory = PERSONAL;
    }
}
}

It looks like you are missing the assignment of your click listeners to your buttons. 看来您没有将点击侦听器分配给按钮。 Use the following code just below your find view by id calls for the buttons. 通过ID调用按钮,在查找视图下方使用以下代码。

        next = (Button)findViewById(R.id.buy_next);
        previous = (Button)findViewById(R.id.buy_previous);
        submit = (Button)findViewById(R.id.buy_submit);

        //New code
        next.setOnClickListener(this);
        previous.setOnClickListener(this);
        submit.setOnClickListener(this);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM