Ich bin neu in der Android-Entwicklung und mit ein bisschen ein Problem, Aktivitäten zu ändern. Ich versuche, Aktivitäten innerhalb einer Methode zu ändern, aber ich erhalte den Fehler cannot resolve method startActivity
und am Parameter Ende der Fehler Cannot resolve constructor 'Intent (...)'
. Ich fand a question here mit der gleichen Art von Problem und versuchte, ihre Antworten in mein Programm zu implementieren, aber keine Freude.Kann Methode nicht auflösen startActivity()
Hier ist der Code:
public void open301(View view) {
startActivity(new Intent(CustomAdapter.this, ThreeZeroOne.class));
}
, bevor sie mit den gleichen Fehler wie diese über dem Code verknüpft an den Antworten der Frage suchen sah:
public void open301(View view) {
Intent openThree = new Intent(this,ThreeZeroOne.class);
startActivity(openThree);
}
komplette Code:
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import android.content.Intent;
public class CustomAdapter extends BaseAdapter {
String[] result;
Context context;
int[] imageId;
private static LayoutInflater inflater = null;
public CustomAdapter(selectGame SelectGame, String[] prgmNameList, int[] prgmImages) {
result = prgmNameList;
context = SelectGame;
this.imageId = prgmImages;
inflater = (LayoutInflater) context.getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return result.length;
}
@Override
public Object getItem(int position) {
return position;
}
@Override
public long getItemId(int position) {
return position;
}
public class Holder {
TextView tv;
ImageView img;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
Holder holder = new Holder();
View rowView;
rowView = inflater.inflate(R.layout.game_selection, null);
holder.tv = (TextView) rowView.findViewById(R.id.txt);
holder.img = (ImageView) rowView.findViewById(R.id.img);
holder.tv.setText(result[position]);
holder.img.setImageResource(imageId[position]);
rowView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(context, "Beginning game " + result[position], Toast.LENGTH_SHORT).show();
}
});
return rowView;
}
public void open301(View view) {
Intent openThree = new Intent(this,ThreeZeroOne.class);
startActivity(openThree);
}
}
Wo versuchen Sie, die Methode auszuführen? in einer Aktivität? Klasse? Fragment? –
In einer Klasse werde ich den Code veröffentlichen, wo es sitzt. – COYG