- Forum-Beiträge: 7
23.03.2017, 10:58:24 via Website
23.03.2017 10:58:24 via Website
Hallo zusammen,
ich bin gerade etwas durch weil ich nun seit Tagen an verschiedenen Problemchen im Code einer Android App sitze und sehe wahrscheinlich gerade den Wald vor lauter Bäumen nicht mehr.
In folgender Klasse habe ich in Zeile 41 das Problem:
public class AddCategoryDialog {
//Add a new category and tag in dialog window
public void add_new_category(final Activity activity) {
AlertDialog.Builder builder = new AlertDialog.Builder(activity);
View dView = activity.getLayoutInflater().inflate(R.layout.dialog_new_category, null);
final EditText nCategory = (EditText) dView.findViewById(R.id.newCategory);
final EditText nTag = (EditText) dView.findViewById(R.id.newTag);
Button dCancel = (Button) dView.findViewById(R.id.buttonCancel);
Button dAdd = (Button) dView.findViewById(R.id.buttonAdd);
builder.setView(dView);
final AlertDialog dialog = builder.create();
dAdd.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
Z41 CategoriesAdapter adapter = new CategoriesAdapter(this, );
if (nCategory.getText().toString().isEmpty() || nTag.getText().toString().isEmpty()){
Toast.makeText(activity, "Empty field!\n Please fill any empty field.", Toast.LENGTH_SHORT).show();
}else{
BASECategory categoryOfAdapter = adapter.findCategory(nCategory.getText().toString());
if (categoryOfAdapter != null){
categoryOfAdapter.getTags().add(nTag.getText().toString());
adapter.notifyDataSetChanged();
} else {
List<String> tags = new ArrayList<String>();
tags.add(nTag.getText().toString());
adapter.addCategory(new BASECategory(nCategory.getText().toString(), tags));
Toast.makeText(activity, "Data added.", Toast.LENGTH_SHORT).show();
}
dialog.dismiss();
}
}
});
dCancel.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
dialog.dismiss();
Toast.makeText(activity, "Adding data canceled!", Toast.LENGTH_SHORT).show();
}
});
dialog.show();
}
}
die Klasse des Adapters:
public class CategoriesAdapter extends ArrayAdapter<BASECategory> {
private final Context context;
private List<BASECategory> values = new ArrayList<BASECategory>();
public CategoriesAdapter(Context context, List<BASECategory> objects) {
super(context, -1, objects);
this.context = context;
this.values = objects;
}
public void addCategory(BASECategory category) {
values.add(category);
notifyDataSetChanged();
}
Wie genau ich das Problem beschreiben soll kann ich gar nciht sagen. Wie gesagt ich will eigentlich nur in der Klasse AddCategoryDialog in der onClick Methode den Adapter initialisieren und bekomme das gerade irgendwie überhaupt nciht hin.
Ich bin über jede mithilfe dankbar.
VG
— geändert am 23.03.2017, 12:02:01
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.