@Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
   try {
     switch (resultCode) {
       case ActivityInlandAirlineticketSelectPassengers.SELECTED_FINISH:
         Bundle b = null;
         if (data != null) {
           b = data.getExtras();
         } else break;
         String passengerListString = "", allPassengerListString = "";
         if (b != null && b.containsKey(SELECTEDPASSENGERSLIST)) {
           passengerListString = b.getString(SELECTEDPASSENGERSLIST);
         }
         if (b != null && b.containsKey(ALLPASSENGERSLIST)) {
           allPassengerListString = b.getString(ALLPASSENGERSLIST);
         } else break;
         try {
           passengerList.clear();
           passengerList =
               (ArrayList<Passenger>)
                   JSONHelper.parseCollection(passengerListString, List.class, Passenger.class);
           allPassengerList =
               (ArrayList<Passenger>)
                   JSONHelper.parseCollection(allPassengerListString, List.class, Passenger.class);
           passengerList =
               ActivityInlandAirlineticketBooking.removeDuplictePassengers(passengerList);
           caculateMoney();
           if (passengerList.size() > 0) {
             add_passager_tv.setText("修改乘客");
             passenger_head_divid_line.setVisibility(View.VISIBLE);
           } else if (passengerList.size() == 0) {
             add_passager_tv.setText("新增乘客");
             passenger_head_divid_line.setVisibility(View.GONE);
           }
           ListAdapter adapter = new PassengerListAdapter(context, passengerList);
           passenger_listview.setAdapter(adapter);
           ActivityInlandAirlineticketBooking.setListViewHeightBasedOnChildren(passenger_listview);
         } catch (Exception e) {
           e.printStackTrace();
           break;
         }
         break;
       default:
         break;
     }
     if (requestCode == CONTANCT_REQUEST_CODE) { // 联系人
       if (data == null) return;
       Bundle b = data.getExtras();
       if (b != null && b.containsKey("pickedPhoneNum")) {
         String myNum = b.getString("pickedPhoneNum");
         if (myNum.startsWith("17951")) {
           myNum = myNum.substring(5);
         } else if (myNum.startsWith("+86")) {
           myNum = myNum.substring(3);
         }
         contact_person_phone_et.setText(myNum);
       }
     } else if (requestCode == BAOXIAN_REQUEST_CODE) {
       if (data == null) return;
       Bundle b = data.getExtras();
       if (b != null && b.containsKey(ActivityTrainBaoxian.BAOXIAN_BUNDSTRING)) {
         String baoxian = b.getString(ActivityTrainBaoxian.BAOXIAN_BUNDSTRING);
         baoxian_price_and_count_tv.setText(baoxian);
         if (baoxian.equals(ActivityTrainBaoxian.No_Baoxian)) {
           baoxian_unitPrice = 0;
         } else if (baoxian.equals(ActivityTrainBaoxian.Baoxian_Five)) {
           baoxian_unitPrice = 5;
         } else if (baoxian.equals(ActivityTrainBaoxian.Baoxian_Ten)) {
           baoxian_unitPrice = 10;
         }
       }
       caculateMoney();
     }
   } catch (Exception e) {
     e.printStackTrace();
   }
 }
  private void initView() {
    context = this;
    sp = getSharedPreferences(SPkeys.SPNAME.getString(), 0);
    imageLoader = new ImageLoader(context.getApplicationContext());
    passengerList = new ArrayList<Passenger>();
    allPassengerList = new ArrayList<Passenger>();

    xibie_listview = (ListView) findViewById(R.id.xibie_listview);
    add_passager_rl = (RelativeLayout) findViewById(R.id.add_passager_rl);
    baoxian_rl = (RelativeLayout) findViewById(R.id.baoxian_rl);
    lianxiren_icon_imgbtn = (ImageButton) findViewById(R.id.lianxiren_icon_imgbtn);
    back_imgbtn = (ImageButton) findViewById(R.id.back_imgbtn);
    home_imgbtn = (ImageButton) findViewById(R.id.home_imgbtn);
    train_num_tv = (TextView) findViewById(R.id.train_num_tv);
    train_type_tv = (TextView) findViewById(R.id.train_type_tv);
    runtime_tv = (TextView) findViewById(R.id.runtime_tv);
    start_station_tv = (TextView) findViewById(R.id.start_station_tv);
    start_time_tv = (TextView) findViewById(R.id.start_time_tv);
    start_date_tv = (TextView) findViewById(R.id.start_date_tv);
    end_station_tv = (TextView) findViewById(R.id.end_station_tv);
    end_time_tv = (TextView) findViewById(R.id.end_time_tv);
    end_date_tv = (TextView) findViewById(R.id.end_date_tv);
    seat_grad_tv = (TextView) findViewById(R.id.seat_grad_tv);
    ticket_price_tv = (TextView) findViewById(R.id.ticket_price_tv);
    remain_count_tv = (TextView) findViewById(R.id.remain_count_tv);
    modify_seat_tv = (TextView) findViewById(R.id.modify_seat_tv);
    add_passager_tv = (TextView) findViewById(R.id.add_passager_tv);
    djsx_tv = (TextView) findViewById(R.id.djsx_tv);
    baoxian_price_and_count_tv = (TextView) findViewById(R.id.baoxian_price_and_count_tv);
    order_totalmoney_tv = (TextView) findViewById(R.id.order_totalmoney_tv);
    contact_person_phone_et = (ClearEditText) findViewById(R.id.contact_person_phone_et);
    yanzhengma_input_et = (ClearEditText) findViewById(R.id.yanzhengma_input_et);
    passenger_head_divid_line = findViewById(R.id.passenger_head_divid_line);
    passenger_listview = (ListView) findViewById(R.id.passenger_listview);
    start_station_icon_iv = (ImageView) findViewById(R.id.start_station_icon_iv);
    end_station_icon_iv = (ImageView) findViewById(R.id.end_station_icon_iv);
    yanzhengma_iv = (ImageView) findViewById(R.id.yanzhengma_iv);
    order_now_btn = (Button) findViewById(R.id.order_now_btn);
    back_imgbtn.setOnClickListener(btnClickListner);
    home_imgbtn.setOnClickListener(btnClickListner);
    modify_seat_tv.setOnClickListener(btnClickListner);
    yanzhengma_iv.setOnClickListener(btnClickListner);
    ((TextView) findViewById(R.id.djsx_tv)).setOnClickListener(btnClickListner);
    add_passager_rl.setOnClickListener(btnClickListner);
    order_now_btn.setOnClickListener(btnClickListner);
    baoxian_price_and_count_tv.setOnClickListener(btnClickListner);
    baoxian_rl.setOnClickListener(btnClickListner);
    lianxiren_icon_imgbtn.setOnClickListener(btnClickListner);

    getIntentTrainInfo();
    train_num_tv.setText(ti.getTrainID());
    train_type_tv.setText(ti.getTrainType());
    runtime_tv.setText("历时:" + ti.getRunTime());
    start_station_tv.setText(ti.getStationS());
    end_station_tv.setText(ti.getStationE());
    seat_grad_tv.setText(ti.getSeat_Type());
    ticket_price_tv.setText("¥" + ticket_price);
    remain_count_tv.setText("余票" + ti.getRemain_Count() + "张");
    start_time_tv.setText(ti.getGoTime());
    end_time_tv.setText(ti.getETime());
    adapter_xibie = new MyListAdapter(context, ti.getSeatList());
    adapter_xibie.setCurrentID(selectedSeatIndex);
    remainTicketCount = Integer.valueOf(ti.getRemain_Count());
    // adapter_xibie.notifyDataSetChanged();
    xibie_listview.setAdapter(adapter_xibie);
    ActivityInlandAirlineticketBooking.setListViewHeightBasedOnChildren(xibie_listview);
    xibie_listview.setOnItemClickListener(
        new OnItemClickListener() {
          @Override
          public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            try {
              if (position != selectedSeatIndex) {
                adapter_xibie.setCurrentID(position);
                adapter_xibie.notifyDataSetChanged();
              }
              selectedSeatIndex = position;
              // adapter_xibie.notifyDataSetChanged();
              ticket_price = Float.valueOf(ti.getSeatList().get(position).getPrice());
              remainTicketCount = Integer.valueOf(ti.getSeatList().get(position).getShengyu());
              caculateMoney();
            } catch (Exception e) {
              e.printStackTrace();
            }
          }
        });
    if (selectedSeatIndex == -1) {
      order_now_btn.setEnabled(false);
      order_now_btn.setBackground(
          getResources().getDrawable(R.drawable.booking_immediately_button_d));
    }

    String SFType = ti.getSFType();
    if (SFType.length() == 3) {
      String SType = SFType.substring(0, 1);
      String FType = SFType.substring(2, 3);
      if (SType.equals("始")) {
        start_station_icon_iv.setBackground(getResources().getDrawable(R.drawable.trains_start));
      } else if (SType.equals("过")) {
        start_station_icon_iv.setBackground(getResources().getDrawable(R.drawable.train_over));
      }
      if (FType.equals("终")) {
        end_station_icon_iv.setBackground(getResources().getDrawable(R.drawable.train_final));
      } else if (FType.equals("过")) {
        end_station_icon_iv.setBackground(getResources().getDrawable(R.drawable.train_over));
      }
    }
    getValidCodePic(); // 获取验证码信息
    // 对于常用联系人,直接返回上次订票时的联系人手机号,若不存在则返回本机手机号码
    if (sp.getString(SPkeys.trainContactPhone.getString(), "").equals(""))
      contact_person_phone_et.setText(CommonFunc.getPhoneNumber(context));
    else contact_person_phone_et.setText(sp.getString(SPkeys.trainContactPhone.getString(), ""));
    caculateMoney();
  }