Я создаю приложение, в котором отображаются данные с прорисовками. Я использовал функцию фрагментации во всех классах, но она вызывает ошибку в tabpagedapater, которая заключается в том, что она несовместима с фрагментарным файлом. Как это исправить?FragmentActivity несовместим с FragmentStatePagerAdapter
Tabpageadapter.java
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
public class TabPagerAdapter extends FragmentStatePagerAdapter {
public TabPagerAdapter(FragmentManager fm) {
super(fm);
// TODO Auto-generated constructor stub
}
@Override
public FragmentActivity getItem(int i) {
switch (i) {
case 0:
//Fragement for Android Tab
return new Android();
case 1:
//Fragment for Ios Tab
return new Ios();
case 2:
//Fragment for Windows Tab
return new Windows();
}
return null;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 0;
}
}
Mainactivity
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.TextView;
import com.learn2crack.library.DatabaseHandler;
import java.util.HashMap;
public class Android extends FragmentActivity {
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
View android = inflater.inflate(R.layout.android_frag, container, false);
DatabaseHandler db = new DatabaseHandler(getApplicationContext());
HashMap<String,String> user = new HashMap<String, String>();
user = db.getUserDetails();
/**
* Displays the registration details in Text view
**/
final TextView fname = (TextView)findViewById(R.id.fname);
final TextView lname = (TextView)findViewById(R.id.lname);
final TextView uname = (TextView)findViewById(R.id.uname);
final TextView email = (TextView)findViewById(R.id.email);
final TextView created_at = (TextView)findViewById(R.id.regat);
fname.setText(user.get("fname"));
lname.setText(user.get("lname"));
uname.setText(user.get("uname"));
email.setText(user.get("email"));
created_at.setText(user.get("created_at"));
return android;
}}
Во всех ваших фрагментах изменяется «extends FragmentActivity» на «extends Fragment» –
Как я могу использовать findviewbyid и getapplicationcontext, расширяя класс фрагментом? – user3508677
для этого можно сделать так: «getActivity(). GetApplicationContext()» и использовать «findViewById» u должен сделать вот так: yourView.findViewById() здесь ваш вид - это представление, которое вы раздуваете в своем фрагменте. –