在;两个Spinner作用于同一个OnselectedItemListener时,通过按Item改变TextView中的显示,不知怎么有bug,请指教!

米粒系统 发布于 2012/03/03 20:47
阅读 2K+
收藏 0

 package com.mili;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;

public class Show extends Activity{
 private Spinner spinner1=null;
 private Spinner spinner2=null;
 private TextView textView1=null;
 private ArrayAdapter<CharSequence> adapterNumber1 = null;
 private ArrayAdapter<CharSequence> adapterNumber2 = null;
 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.show);
        instantiationCount();
   setCountLister();
  /* adapterNumber1 = ArrayAdapter.createFromResource(this,
     R.array.number, android.R.layout.simple_spinner_item);
    adapterNumber2 = ArrayAdapter.createFromResource(this,
     R.array.number, android.R.layout.simple_spinner_item);
    spinner1.setAdapter(adapterNumber1);
    spinner2.setAdapter(adapterNumber2);*/
 }
 void instantiationCount(){
  spinner1=(Spinner)findViewById(R.id.spinner1);
  spinner2=(Spinner)findViewById(R.id.spinner2);
  textView1=(TextView)findViewById(R.id.textview);
 }
 void setCountLister(){
  spinner1.setOnItemSelectedListener(new SpinnerSelectedListener());
  spinner2.setOnItemSelectedListener(new SpinnerSelectedListener());
  
 }
  class SpinnerSelectedListener implements OnItemSelectedListener{
   long i=0,j=0;
 @Override
 public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
   long arg3) {
  // TODO Auto-generated method stub
  if(arg0==spinner1){
  i=arg3;
  if(i==j){textView1.setText("计算");System.out.println("第一个相同");}
  else{textView1.setText("转换成");System.out.println("第一个不同");}
  }
  else{
   j=arg3;
   if(i==j){textView1.setText("计算");System.out.println("第二个相同");}
   else{textView1.setText("转换成");System.out.println("第二个不同");}
  }
 }
 
 //@Override
 public void onNothingSelected(AdapterView<?> arg0) {
  // TODO Auto-generated method stub
  
 }
 
}
}

                                                              
这个主要是通过点击spinner中的选项来控制两个spinner之间textview显示的内容,但刚开始几次点过后,都会
根据两个中的不同选项变成“转化成”,和相同的“计算”,但按着按着就出现异常,不知道怎么办!

log:3-03 20:30:32.924: E/NetConnWrapper(432):  at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocketImpl(Native Method)
:26:59.124: E/NetConnWrapper(432):  at com.tencent.qphone.base.kernel.j$a.run(Unknown Source)
    
 
                                                              2012.3.3.224
20.35 发现规律:在一边不能同时看一个Item两次,不然就对不上号!

加载中
0
乱世键客
乱世键客

你这个异常报的很诡异?com.tencent.qphone.base.kernel.j?难道你还用了腾讯的什么jar包了?

0
米粒系统
没有用腾讯包
0
章系统
这个我一般的处理是增加一个tag,这样就可以处理。用tag来判断。
返回顶部
顶部