Как решить исключение нулевого указателя в android?
Я создал пользовательский список, чтобы показать некоторые данные. Теперь когда я ввожу данные элементы не отображаются и мое приложение выходит из строя пожалуйста помогите мне я использовал эту ссылку для моего
Показать несколько данных из базы данных SQLite внутри ListView в android один за другим - примеры Android[^]
Что я уже пробовал:
1. Активность Леветрана:
LeaveDb myDb; Button ShowApprovedStatus; //Declaration TextInputLayout TextInputLayout textInputGoingAbroad; TextInputLayout textInputLayoutDate; TextInputLayout textInputLeaveType1; TextInputLayout textInputLeaveType2; TextInputLayout textInputDays1; TextInputLayout textInputExpStDt; TextInputLayout textInputExpEndDt; TextInputLayout textInputReqType; TextInputLayout textInputStatus; TextInputLayout textInputSubmit; //Declaration EditTexts EditText check_date, Days1, ExpStDt, ExpEndDt; //Declaration Spinners private Spinner LeaveType1, LeaveType2; private Spinner ReqType; //Declaration Checkbox CheckBox Status, GoingAbroad; private LinearLayout parentLinearLayout; Button onAddField, onDelete ; <pre> @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_leave_tran); myDb = new LeaveDb(this); ShowApprovedStatus = (Button) findViewById(R.id.Submit); parentLinearLayout = (LinearLayout) findViewById(R.id.parent_linear_layout); onAddField = (Button) findViewById(R.id.add_field_button); onDelete = (Button) findViewById(R.id.delete_button); textInputLeaveType1 = (TextInputLayout) findViewById(R.id.textInputLeaveType1); textInputReqType = (TextInputLayout) findViewById(R.id.textInputReqType); textInputLeaveType2 = (TextInputLayout) findViewById(R.id.textInputLeaveType2); onAddField.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); final View rowView = inflater.inflate(R.layout.field, null); // Add the new row before the add field button. parentLinearLayout.addView(rowView, parentLinearLayout.getChildCount() - 1); } }); onDelete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { parentLinearLayout.removeView((View) v.getParent()); } }); //Here i can use Start date as a 01/01/2018 and End Date is 01/01/2019 try { System.out.println ("Days: " + getDaysBetweenDates("2019-05-14","2019-05-18")); } catch (java.text.ParseException e) { e.printStackTrace(); } //Cast variables over here. final Calendar myCalendar1 = Calendar.getInstance(); check_date = (EditText) findViewById(R.id.check_date); textInputLayoutDate = (TextInputLayout) findViewById(R.id.textInputLayoutDate); // Code for Req Date Picker final DatePickerDialog.OnDateSetListener date2 = new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { myCalendar1.set(Calendar.YEAR, year); myCalendar1.set(Calendar.MONTH, month); // Here you can get day,month and year. myCalendar1.set(Calendar.DAY_OF_MONTH, dayOfMonth); updateLabel(); } private void updateLabel() { String myFormat = "yyyy-MM-dd"; //In which you need put here SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US); check_date.setText(sdf.format(myCalendar1.getTime())); } }; check_date.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub new DatePickerDialog(LeaveTran.this, date2, myCalendar1 .get(Calendar.YEAR), myCalendar1.get(Calendar.MONTH), myCalendar1.get(Calendar.DAY_OF_MONTH)).show(); } }); // Code to retrieve Requested Date Days1 = (EditText) findViewById(R.id.Days1); textInputDays1 = (TextInputLayout)findViewById(R.id.textInputDays1); GoingAbroad = (CheckBox) findViewById(R.id.GoingAbroad); textInputGoingAbroad = (TextInputLayout)findViewById(R.id.textInputGoingAbroad); final Calendar startDate = Calendar.getInstance(); textInputExpStDt = (TextInputLayout)findViewById(R.id.textInputExpStDt); ExpStDt = (EditText) findViewById(R.id.ExpStDt); // Code for ExpStDt picker final DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener(){ @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { startDate.set(Calendar.YEAR, year); startDate.set(Calendar.MONTH, month); // Here you can get day,month and year. startDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); updateLabel(); } private void updateLabel() { String myFormat = "yyyy-MM-dd"; //In which you need put here SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US); ExpStDt.setText(sdf.format(startDate.getTime())); } }; ExpStDt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub new DatePickerDialog(LeaveTran.this, date, startDate .get(Calendar.YEAR), startDate.get(Calendar.MONTH), startDate.get(Calendar.DAY_OF_MONTH)).show(); String outputDate = addDays(new Date(),6 ); //for current dates ExpEndDt.setText(outputDate); } }); final Calendar endDate = Calendar.getInstance(); textInputExpEndDt = (TextInputLayout)findViewById(R.id.textInputExpEndDt); ExpEndDt = (EditText) findViewById(R.id.ExpEndDt); // Code for ExpEndDt picker final DatePickerDialog.OnDateSetListener date1 = new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { endDate.set(Calendar.YEAR, year); endDate.set(Calendar.MONTH, month); // Here you can get day,month and year. endDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); updateLabel(); } private void updateLabel() { String myFormat = "yyyy-MM-dd"; //In which you need put here SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US); ExpEndDt.setText(sdf.format(endDate.getTime())); } }; ExpEndDt.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub new DatePickerDialog(LeaveTran.this, date1, endDate .get(Calendar.YEAR), endDate.get(Calendar.MONTH), endDate.get(Calendar.DAY_OF_MONTH)).show(); } }); Status = (CheckBox) findViewById(R.id.Status); textInputStatus = (TextInputLayout)findViewById(R.id.textInputStatus); ShowApprovedStatus(); addItemsOnSpinner2(); //addItemsOnSpinner1(); addItemsOnSpinner3(); } // add items into spinner dynamically private void addItemsOnSpinner3() { ReqType = (Spinner)findViewById(R.id.ReqType); List<String> list3 = new ArrayList<String>(); list3.add("Need Advance Payment"); list3.add("No Advance Payment"); ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list3); dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); ReqType.setAdapter(dataAdapter); } // add items into spinner dynamically /* private void addItemsOnSpinner1() { LeaveType2 = (Spinner) findViewById(R.id.LeaveType2); List<String> list2 = new ArrayList<String>(); list2.add("Annual Leave"); list2.add("Medical Leave Absence"); ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list2); dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); LeaveType2.setAdapter(dataAdapter); }*/ // add items into spinner dynamically private void addItemsOnSpinner2() { LeaveType1 = (Spinner)findViewById(R.id.LeaveType1); List<String> list = new ArrayList<String>(); list.add("Please Select Leave Type"); list.add("Annual Leave"); list.add("Medical Leave Absence"); ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list); dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); LeaveType1.setAdapter(dataAdapter); } // Calculate days to get the end date private String addDays(Date startDate, int Days) { SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT, Locale.US); Calendar c = Calendar.getInstance(); try { c.setTime(dateFormat.parse(String.valueOf(startDate))); } catch (android.net.ParseException e) { e.printStackTrace(); } catch (java.text.ParseException e) { e.printStackTrace(); } c.add(Calendar.DAY_OF_WEEK,Days); String resultDate=dateFormat.format(c.getTime()); return resultDate; } // Code get number of days private long getDaysBetweenDates(String ExpStDt, String ExpEndDt) throws java.text.ParseException { SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT, Locale.US); Date startDate, endDate; long Days = 0; try { startDate = dateFormat.parse(ExpStDt); endDate = dateFormat.parse(ExpEndDt); Days = getUnitBetweenDates(startDate, endDate, TimeUnit.DAYS); } catch (android.net.ParseException e) { e.printStackTrace(); } return Days; } private long getUnitBetweenDates(Date startDate, Date endDate, TimeUnit Days) { long timeDiff = startDate.getTime() - endDate.getTime(); return Days.convert(timeDiff, TimeUnit.MILLISECONDS); } //Create a method for adding data public void ShowApprovedStatus () { ShowApprovedStatus.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Show Validation if (validate()){ // Get values from edit text fields. String date = check_date.getText().toString(); String Leave1 = LeaveType1.getSelectedItem().toString(); String text = LeaveType2.getSelectedItem().toString(); String Day1 = Days1.getText().toString(); String Exp_St_Dt = ExpStDt.getText().toString(); String Exp_End_Dt = ExpEndDt.getText().toString(); String Req_Type = ReqType.getSelectedItem().toString(); String Status1 = Status.toString(); } // Data inserted or not boolean isInserted = myDb.insertData(check_date.getText().toString(),ReqType.getSelectedItem().toString(),LeaveType1.getSelectedItem().toString(), LeaveType2.getSelectedItem().toString(),Days1.getText().toString(), ExpStDt.getText().toString(), ExpEndDt.getText().toString(),Status.toString(),GoingAbroad.toString()); if (isInserted == true) { // TODO Auto-generated method stub Intent intent = new Intent(LeaveTran.this, ListViewActivity.class); startActivity(intent); } else { Snackbar.make(ShowApprovedStatus, "Data Not Inserted Successfully", Snackbar.LENGTH_LONG).show(); } } // This method is used to validate input given by user private boolean validate() { boolean valid = false; // Get values from editText fields String date = check_date.getText().toString(); String Leave1 = LeaveType1.getSelectedItem().toString(); String text = LeaveType2.getSelectedItem().toString(); String Day1 = Days1.getText().toString(); String Exp_St_Dt = ExpStDt.getText().toString(); String Exp_End_Dt = ExpEndDt.getText().toString(); String Req_Type = ReqType.getSelectedItem().toString(); String Status1 = Status.toString(); // Handling validation for User Name field. if (date.isEmpty()){ textInputLayoutDate.setError("Please Enter Requested Date"); } else { valid = true; textInputLayoutDate.setError(null); } if (Leave1.isEmpty()){ valid = false; textInputLeaveType1.setError("Please Choose your Type of Leave No 1"); } else { valid = true; textInputLeaveType1.setError(null); } if (text.isEmpty()){ valid = false; textInputLeaveType2.setError("Please Choose your Type of Leave No 1"); } else { valid = true; textInputLeaveType2.setError(null); } if (Day1.isEmpty()) { valid = false; textInputDays1.setError("Please enter the No. days for Leave Type 1"); } else { valid = true; textInputDays1.setError(null); } if (Exp_St_Dt.isEmpty()) { valid = false; textInputExpStDt.setError("Please Enter The Expected Date Where you want to start Your leave"); } else { valid = true; textInputExpStDt.setError(null); } if (Exp_End_Dt.isEmpty()) { valid = false; textInputExpEndDt.setError("Please Enter the Expected Date Where you want to End Your leave"); } else { valid = true; textInputExpEndDt.setError(null); } if (Req_Type.isEmpty()) { valid = false; textInputReqType.setError("Please Select The Type of Request Leave You Want"); } else { valid = true; textInputReqType.setError(null); } if (Status1.isEmpty()) { valid = false; textInputStatus.setError("The status should not go more than 100"); } else { valid = true; textInputStatus.setError(null); } // Check validation for end date that is greater or less than start date SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd"); try { if(sdf.parse(Exp_St_Dt).before(sdf.parse(Exp_End_Dt))) { valid = true;//If start date is before end date textInputExpStDt.setError(null); } else if(sdf.parse(Exp_St_Dt).equals(sdf.parse(Exp_End_Dt))) { valid = false;//If two dates are equal textInputExpStDt.setError("The start date should not be same with end date"); textInputExpEndDt.setError("The End Date should not be same as Start Date"); } else if (sdf.parse(Exp_End_Dt).before(sdf.parse(Exp_St_Dt))) { valid = false; //If start date is after the end date textInputExpEndDt.setError("The End Date should not be less than Start Date"); } } catch (Exception e) { e.printStackTrace(); } return valid; } }); } }
2. ListView.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".ListViewActivity"> <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" > </ListView> </RelativeLayout>
3. ListViewActivity.java
LeaveDb базы данных mydb;
Ошибки ошибки;
Курсор курсор;
SQLiteListAdapter ListAdapter ;
ArrayList и Л;строка> У ReqDate_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У ReqType_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У LeaveType1_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У LeaveType2_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У Days1_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У ExpStDt_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У ExpEndDt_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У Status_ArrayList = новый ArrayList и Л;строка&ГТ;();
ArrayList и Л;строка> У GoingAbroad_ArrayList = новый ArrayList и Л;строка&ГТ;();
Элемент ListView в ListView;
@Ручная коррекция
protected void onCreate(Bundle savedInstanceState) {
супер.метод onCreate(savedInstanceState);
setContentView(R. layout.activity_list_view);
LISTVIEW = (ListView) findViewById(R. id.listView1);
myDb = new LeaveDb(это);
}
@Ручная коррекция
охраняемых недействительными onResume() {
ShowSQLiteDBdata() ;
супер.onResume();
}
private void ShowSQLiteDBdata() {
Ошибки = базы данных mydb.getWritableDatabase();
cursor = SQLITEDATABASE.rawQuery("SELECT * FROM LeaveTran", null);
ReqDate_ArrayList.clear(); // 1
ReqType_ArrayList.clear(); // 2
LeaveType1_ArrayList.clear(); // 3
LeaveType2_ArrayList.clear(); // 4
Days1_ArrayList.clear(); //5
ExpStDt_ArrayList.clear(); //6
ExpEndDt_ArrayList.clear(); //7
Status_ArrayList.clear(); //8
GoingAbroad_ArrayList.clear(); //9
если (курсор.moveToFirst()) {
делать {
ReqDate_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_ReqDate))); // 1
ReqType_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_ReqType))); // 2
LeaveType1_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_LeaveType1))); // 3
LeaveType2_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_LeaveType2))); // 4
Days1_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_Days1))); // 5
ExpStDt_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_ExpStDt))); // 6
ExpEndDt_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_ExpEndDt))); // 7
Status_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_Status))); // 8
GoingAbroad_ArrayList.добавить(курсор.метода getString(курсор.getColumnIndex(базы данных mydb.KEY_GoingAbroad))); //9
} пока (курсор.moveToNext());
}
ListAdapter = новый SQLiteListAdapter(ListViewActivity.this,
ReqDate_ArrayList, //1
ReqType_ArrayList, //2
LeaveType1_ArrayList, //3
LeaveType2_ArrayList, //4
Days1_ArrayList, //5
ExpStDt_ArrayList, //6
ExpStDt_ArrayList, //7
ExpEndDt_ArrayList, // 8
Status_ArrayList, // 9
GoingAbroad_ArrayList // 10
);
LISTVIEW.setAdapter(ListAdapter);
курсор.рядом();
}
4. listdatalayout.xml
<relativelayout
описание:андроид="http://schemas.android.com/apk/res/android" для android:layout_width="присваиваем"
="" для android:layout_height="присваиваем" для Android:paddingbottom="@Димена/activity_vertical_margin" для Android:paddingleft="@Димена/activity_horizontal_margin" для Android:paddingright="@Димена/activity_horizontal_margin" андроид:в paddingtop="@Димена/activity_vertical_margin"&ГТ;
<textview
android:id="@+id/textView1"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignparentleft="правда" для Android:layout_alignparenttop="истинный" андроид:текст="ReqDate =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewID"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+по ID/textView1" для Android:layout_alignbottom="@+по ID/textView1" для Android:layout_torightof="@+по ID/textView1" андроид:текст="ReqDate" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView2"
="" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/textView1" android:text="ReqType =" android:textappearance="?android:attr/textAppearanceMedium" android:textcolor="#050505">
<textview
android:id="@+id/textViewNAME"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" для Android:layout_below="@+ID и/textViewID" для Android:layout_torightof="@+ID и/textView2" андроид:текст="ReqType" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView3"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignparentleft="правда" для Android:layout_below="@+ID и/textView2" андроид:текст="LeaveType1 =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewPHONE_NUMBER"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbottom="@+ID и/textView3" для Android:layout_torightof="@+ID и/textView3" андроид:текст="LeaveType1" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView4"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignparentleft="правда" для Android:layout_below="@+ID и/textView3" андроид:текст="LeaveType2 =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewSUBJECT"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+ID и/textView4" для Android:layout_alignbottom="@+ID и/textView4" для Android:layout_torightof="@+ID и/textView4" андроид:текст="LeaveType2" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView6"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" для Android:layout_below="@+ID и/textView3" для Android:layout_alignparentleft="правда" для Android:layout_marginleft="18dp" для Android:layout_margintop="38dp" андроид:текст="дней1 =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewDays1"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+ID и/textView6" для Android:layout_alignbottom="@+ID и/textView6" для Android:layout_marginleft="1dp" для Android:layout_marginbottom="3DP по" андроид:layout_torightof="@+ID и/textView4" андроид:текст="дней1" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView7"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" для Android:layout_below="@+ID и/textView4" для Android:layout_alignparentleft="правда" для Android:layout_marginleft="18dp" для Android:layout_margintop="38dp" андроид:текст="ExpStDt =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewExpStDt"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+ID и/textView7" для Android:layout_alignbottom="@+ID и/textView7" для Android:layout_marginleft="1dp" для Android:layout_marginbottom="3DP по" андроид:layout_torightof="@+ID и/textView4" андроид:текст="ExpStDt" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView8"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" для Android:layout_below="@+ID и/textView6" для Android:layout_alignparentleft="правда" для Android:layout_marginleft="18dp" для Android:layout_margintop="38dp" андроид:текст="ExpEndDt =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewExpEndDt"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+ID и/textView8" для Android:layout_alignbottom="@+ID и/textView8" для Android:layout_marginleft="1dp" для Android:layout_marginbottom="3DP по" андроид:layout_torightof="@+ID и/textView4" андроид:текст="ExpEndDt" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView9"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" для Android:layout_below="@+ID и/textView7" для Android:layout_alignparentleft="правда" для Android:layout_marginleft="18dp" для Android:layout_margintop="38dp" андроид:текст="состояние =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewStatus"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+ID и/textView9" для Android:layout_alignbottom="@+ID и/textView9" для Android:layout_marginleft="1dp" для Android:layout_marginbottom="3DP по" андроид:layout_torightof="@+ID и/textView4" андроид:текст="статус" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textView10"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" для Android:layout_below="@+ID и/textView8" для Android:layout_alignparentleft="правда" для Android:layout_marginleft="18dp" для Android:layout_margintop="38dp" андроид:текст="состояние =" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
<textview
android:id="@+id/textViewGoingAbroad"
="" для android:layout_width="wrap_content в качестве параметров" в android:layout_height="wrap_content в качестве параметров" андроид:layout_alignbaseline="@+ID и/textView10" для Android:layout_alignbottom="@+ID и/textView10" для Android:layout_marginleft="1dp" для Android:layout_marginbottom="3DP по" андроид:layout_torightof="@+ID и/textView4" андроид:текст="статус" для Android:textappearance="?андроид:м/textAppearanceMedium" для Android:свойства textColor="#050505"&ГТ;
Это то, что показывает в моем logcat и:
Вызванные: Java для.яз.NullPointerException: попытка вызвать виртуальный метод 'void android.view.View.setOnClickListener(android.view.View$OnClickListener)' по ссылке на нулевой объект
в com.example.huzai.listview.Ливетран.ShowApprovedStatus(LeaveTran.java:312)
в com.example.huzai.listview.LeaveTran.onCreate(LeaveTran.java:220)
David Crow
Пожалуйста, отредактируйте свой пост заново, удалив все, кроме соответствующих частей. Мы рады ответить на конкретные вопросы, предполагая, что вы потратили время на сужение проблемы, но никто в здравом уме не будет пробираться через весь ваш проект.
Кстати, вы смотрели на строку 312 из LeaveTran.java-что?