使用到纺纱,应用程序工作正常,但会显示在单击按钮时错误 [英] Using to spinners, app works fine, but when the button is clicked error is displayed

查看:80
本文介绍了使用到纺纱,应用程序工作正常,但会显示在单击按钮时错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在这里; S编码

 <按钮
        机器人:ID =@ + ID / CONV
        机器人:layout_width =150dp
        机器人:layout_height =70dp
        机器人:layout_alignParentTop =真
        机器人:layout_centerHorizo​​ntal =真
        机器人:layout_marginTop =76dp
        机器人:文字=转换
        安卓的onClick =的onCreate/>


 公共类LstActivity延伸活动{的EditText等;
TextView的电视;
按钮B1;
/ **当第一次创建活动调用。 * /
@覆盖
公共无效的onCreate(捆绑savedInstanceState){
    super.onCreate(savedInstanceState);
    的setContentView(R.layout.main);
    等=(EditText上)findViewById(R.id.editText1); 微调微调=(微调)findViewById(R.id.spinner1);
 微调S2 =(微调)findViewById(R.id.spinner2);
 ArrayAdapter<>适配器= ArrayAdapter.createFromResource(这一点,R.array.weight,android.R.layout.simple_spinner_item);
 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 spinner.setAdapter(适配器);
  spinner.setOnItemSelectedListener(新myaction());
  电视=(的TextView)findViewById(R.id.textView3);  ArrayAdapter<>适配器1 = ArrayAdapter.createFromResource(这一点,R.array.weight,android.R.layout.simple_spinner_item);
  adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  s2.setAdapter(适配器1);
   s2.setOnItemSelectedListener(新myaction2());
   B1 =(按钮)findViewById(R.id.conv);
   et.setText(0);
   浮X =(Float.parseFloat(将String.valueOf(et.getText())));   如果((spinner.getSelectedItemPosition()== 2)及及((s2.getSelectedItemPosition()== 1)))
   {       tv.setText(将String.valueOf(gmtomilli(X)+毫克));
   }
   }

该应用程序启动正常,但单击按钮时,显示下面的错误。

  15 06-21:48:46.509:E / AndroidRuntime(2260):java.lang.IllegalStateException:找不到在活动课kk.and方法的onCreate(视图) .LstActivity对视图类android.widget.Button的onClick处理程序ID为CONV


解决方案

拓展上萨米尔的回答(修改安卓的onClick =的onCreate安卓的onClick =btnclick)与code向您展示如何使其工作:

 公共类LstActivity延伸活动{    的EditText等;
    TextView的电视;
    按钮B1;
    微调微调;
    微调S2;
    浮X;    @覆盖
    公共无效的onCreate(捆绑savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.main);        微调=(微调)findViewById(R.id.spinner1);
        S2 =(微调)findViewById(R.id.spinner2);        //你的另一code        X =(Float.parseFloat(将String.valueOf(et.getText())));    }    公共无效btnclick(视图v){
          如果((spinner.getSelectedItemPosition()== 2)及及((s2.getSelectedItemPosition()== 1))){
            tv.setText(将String.valueOf(gmtomilli(X)+毫克));
          }
    }
}

here;s the coding

  <Button
        android:id="@+id/conv"
        android:layout_width="150dp"
        android:layout_height="70dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="76dp"
        android:text="Convert" 
        android:onClick="onCreate"/>


public class LstActivity extends Activity {

EditText et;
TextView tv;
Button b1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState ) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    et=(EditText)findViewById(R.id.editText1);

 Spinner spinner=(Spinner)findViewById(R.id.spinner1);
 Spinner s2=(Spinner)findViewById(R.id.spinner2);


 ArrayAdapter<?> adapter=ArrayAdapter.createFromResource(this, R.array.weight, android.R.layout.simple_spinner_item);
 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 spinner.setAdapter(adapter);    
  spinner.setOnItemSelectedListener(new myaction());


  tv=(TextView)findViewById(R.id.textView3);

  ArrayAdapter<?> adapter1=ArrayAdapter.createFromResource(this, R.array.weight, android.R.layout.simple_spinner_item);
  adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  s2.setAdapter(adapter1);    
   s2.setOnItemSelectedListener(new myaction2());
   b1=(Button)findViewById(R.id.conv);
   et.setText("0");


   float x=(Float.parseFloat(String.valueOf(et.getText())));





   if ((spinner.getSelectedItemPosition()==2) && ((s2.getSelectedItemPosition()==1)))
   {

       tv.setText(String.valueOf(gmtomilli(x)+"mg"));
   }


   }

The app starts fine, but when the button is clicked, the following error is shown.

06-21 15:48:46.509: E/AndroidRuntime(2260): java.lang.IllegalStateException: Could not find a method onCreate(View) in the activity class kk.and.LstActivity for onClick handler on view class android.widget.Button with id 'conv'

解决方案

Expanding on Samir's answer (change the android:onClick="onCreate" to android:onClick="btnclick") with code showing you how to make it work:

public class LstActivity extends Activity {   

    EditText et;   
    TextView tv;   
    Button b1;   
    Spinner spinner;
    Spinner s2;
    float x;

    @Override  
    public void onCreate(Bundle savedInstanceState ) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  

        spinner=(Spinner)findViewById(R.id.spinner1);      
        s2=(Spinner)findViewById(R.id.spinner2);     

        // your other code

        x=(Float.parseFloat(String.valueOf(et.getText())));           

    } 

    public void btnclick(View v){       
          if ((spinner.getSelectedItemPosition()==2) && ((s2.getSelectedItemPosition()==1))) {            
            tv.setText(String.valueOf(gmtomilli(x)+"mg"));            
          }     
    }   
}

这篇关于使用到纺纱,应用程序工作正常,但会显示在单击按钮时错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆