2011-12-08 3 views
0

나는 안드로이드 viewflipper을하려고합니다. 나는 단추 클릭 (다음 & 이전)에 변경 될 것이라고 3 전망이있다. 나는이 코드를 작성했고 로그에 버튼 위젯 오류가 있다고 말했다. 어떻게 해결할 수 있을까요?버튼 오류 viewflipper android

내 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> 

내 활동 당신이 당신의 버튼로 클릭 리스너의 할당을 누락 것 같습니다

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; 
    } 
} 
} 
+0

도움이 필요하면 오류 메시지 및 스택 추적을 추가하는 것이 좋습니다. 질문에서 명확하지 않습니다 1) 오류가 무엇입니까. 2) 오류가 무엇을합니다. 앱이 다운 되나요? 코드를 컴파일 할 수 있습니까? 등. – Entreco

답변

1

. 버튼에 대한 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); 
+0

오, 내, 나는 그것을 깨닫지 못했습니다. 정국 – aDee