hellow my name is carlos I need help to connect in the listview another activities,all code is well under this part
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position){
case 0:
Intent i = new Intent(getActivity(),dia1.class);
startActivity(i);
Fragment2.java:
public class Fragment2 extends Fragment {
ListView listView;
DiasListAdapter adapter;
private final String LOG_TAG = "test";
public Fragment2() {
}
@Override
public void onAttach (Activity activity) {
super.onAttach(activity);
Log.v(LOG_TAG, "onAttach");
}
@Override
public void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.v(LOG_TAG, "onCreate");
}
@Override
public View onCreateView (LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) {
final View rootView = inflater.inflate(R.layout.fragment2_layout, container, false);
Log.v(LOG_TAG, "onCreateView");
DiasList diaslist_datos [] = new DiasList[]{
new DiasList(R.drawable.icolist,"Día 1"),
new DiasList(R.drawable.icolist,"Día 2"),
new DiasList(R.drawable.icolist,"Día 3"),
new DiasList(R.drawable.icolist,"Día 4"),
new DiasList(R.drawable.icolist,"Día 5"),
new DiasList(R.drawable.icolist,"Día 6"),
new DiasList(R.drawable.icolist,"Día 7")
};
final DiasListAdapter adapter = new DiasListAdapter(this.getActivity(), R.layout.listview_item , diaslist_datos);
listView = (ListView) rootView.findViewById(R.id.ListView);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position){
case 0:
Intent i = new Intent(getActivity(),dia1.class);
startActivity(i);
}
}
});
return rootView;
}
DiasList.java:
public class DiasList {
public int icon;
public String title;
public DiasList(){
super();
}
public DiasList(int icon, String title){
super();
this.icon = icon;
this.title = title;
}
}
DiasListAdapter.java:
public class DiasListAdapter extends ArrayAdapter<DiasList> {
Context myContext;
int mylayoutResourceID;
DiasList mydata[] = null;
public DiasListAdapter(Context context,int layoutResourceID,DiasList[] data){
super(context,layoutResourceID,data);
this.myContext = context;
this.mylayoutResourceID = layoutResourceID;
this.mydata = data;
}
public View getView(int position, View convertView, ViewGroup parent){
View row = convertView;
DietListHolder holder = null;
if(row == null){
LayoutInflater inflater = ((Activity)myContext).getLayoutInflater();
row = inflater.inflate(mylayoutResourceID, parent,false);
holder = new DietListHolder();
holder.imagen = (ImageView) row.findViewById(R.id.image);
holder.textView = (TextView) row.findViewById(R.id.txt);
row.setTag(holder);
}else{
holder = (DietListHolder)row.getTag();
}
DiasList diasList = mydata[position];
holder.textView.setText(diasList.title);
holder.imagen.setImageResource(diasList.icon);
return row;
}
static class DietListHolder{
ImageView imagen;
TextView textView;
}
}
dia1.java:
public class dia1 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dia1);
}
}
listview_item.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<ImageView
android:layout_width="70dp"
android:layout_height="70dp"
android:id="@+id/image"
android:src="@drawable/icolist"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/txt"
android:textAppearance="@style/TextAppearance.AppCompat.Title"
android:layout_marginLeft="80dp"
android:layout_marginTop="22dp"
android:textColor="#000000"/>
</RelativeLayout>
The error is : plis help me!
--------- beginning of crash 05-12 11:09:47.003 2426-2426/cqdevelopers.incrediblediet E/AndroidRuntime: FATAL EXCEPTION: main Process: cqdevelopers.incrediblediet, PID: 2426 android.content.ActivityNotFoundException: Unable to find explicit activity class {cqdevelopers.incrediblediet/cqdevelopers.incrediblediet.dia1}; have you declared this activity in your AndroidManifest.xml? at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1794) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1512) at android.app.Activity.startActivityForResult(Activity.java:3917) at android.support.v4.app.ActivityCompatJB.startActivityForResult(ActivityCompatJB.java:30) at android.support.v4.app.ActivityCompat.startActivityForResult(ActivityCompat.java:162) at android.support.v4.app.FragmentActivity.startActivityFromFragment(FragmentActivity.java:915) at android.support.v4.app.FragmentActivity$HostCallbacks.onStartActivityFromFragment(FragmentActivity.java:1010) at android.support.v4.app.Fragment.startActivity(Fragment.java:921) at android.support.v4.app.Fragment.startActivity(Fragment.java:910) at cqdevelopers.incrediblediet.Fragment2$1.onItemClick(Fragment2.java:72) at android.widget.AdapterView.performItemClick(AdapterView.java:310) at android.widget.AbsListView.performItemClick(AbsListView.java:1145) at android.widget.AbsListView$PerformClick.run(AbsListView.java:3042) at android.widget.AbsListView$3.run(AbsListView.java:3879) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
add break under startActivity(i);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
switch (position){
case 0:
Intent i = new Intent(getActivity(),dia1.class);
startActivity(i);
break;
}
}
});
Try this!!!
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.