AppCompatActivity 到片段
AppCompatActivity to Fragment
您好,我想将此代码更改为片段。此代码的基础是 AppCompatActivity,我需要更改,但我不能。
我的Mainactivity使用片段代码显示所有页面
片段 = new FavoritesFragment();
如果我使用 AppCompatActivity 或更改 FavoritesFragment 页面 Mainactivity 出错
public class FavoritesFragment extends Fragment {
public static TextView txt_status ;
EditText et_amount , et_desc , et_email , et_mobile , et_mahsol ;
Button btn_pay ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txt_status = (TextView)findViewById(R.id.txt_status);
et_amount = (EditText)findViewById(R.id.et_amount);
et_desc = (EditText)findViewById(R.id.et_desc);
et_email = (EditText)findViewById(R.id.et_email);
et_mobile = (EditText)findViewById(R.id.et_mobile);
et_mahsol = (EditText)findViewById(R.id.et_mahsol);
btn_pay = (Button)findViewById(R.id.btn_pay);
btn_pay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(et_amount.getText().toString().equals("") || Integer.parseInt(et_amount.getText().toString())<100){
Toast.makeText(MainActivity.this,"مبلغ وارد شده صحیح نمیباشد",Toast.LENGTH_LONG).show();
}else if(et_desc.getText().toString().equals("")){
Toast.makeText(MainActivity.this,"وارد کردن توضیحات الزامیست !",Toast.LENGTH_LONG).show();
}else if(et_email.getText().toString().equals("")){
Toast.makeText(MainActivity.this,"وارد کردن hایمیل الزامیست !",Toast.LENGTH_LONG).show();
}else if(et_mobile.getText().toString().equals("")){
Toast.makeText(MainActivity.this,"وارد کردن شماره همراه الزامیست !",Toast.LENGTH_LONG).show();
}else {
Intent intent = new Intent(MainActivity.this,Payment.class);
intent.putExtra("Amount",et_amount.getText().toString());
intent.putExtra("Description",et_desc.getText().toString());
intent.putExtra("Email",et_email.getText().toString());
intent.putExtra("Mobile",et_mobile.getText().toString());
intent.putExtra("Mahsol",et_mahsol.getText().toString());
startActivity(intent);
}
}
});
}
}
你必须创建一个新的片段,你不能用片段替换 AppCompatActivity。 Fragment 和 Activity 它们是不同的并且有不同的行为。
最好你看看这里
https://developer.android.com/guide/components/fragments.html
Fragment有不同的生命周期回调,需要学习,不是总能找到现成的代码。你应该在这里看 5 分钟 https://developer.android.com/guide/components/fragments.html
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_main, container, false);
txt_status = (TextView) rootView.findViewById((R.id.txt_status);
et_amount = (EditText) rootView.findViewById(R.id.et_amount);
et_desc = (EditText) rootView.findViewById((R.id.et_desc);
et_email = (EditText) rootView.findViewById((R.id.et_email);
et_mobile = (EditText) rootView.findViewById((R.id.et_mobile);
et_mahsol = (EditText) rootView.findViewById((R.id.et_mahsol);
btn_pay = (Button) rootView.findViewById((R.id.btn_pay);
return rootView;
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
btn_pay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (et_amount.getText().toString().equals("") || Integer.parseInt(et_amount.getText().toString()) < 100) {
Toast.makeText(getContext(), "مبلغ وارد شده صحیح نمیباشد", Toast.LENGTH_LONG).show();
} else if (et_desc.getText().toString().equals("")) {
Toast.makeText(getContext(), "وارد کردن توضیحات الزامیست !", Toast.LENGTH_LONG).show();
} else if (et_email.getText().toString().equals("")) {
Toast.makeText(getContext(), "وارد کردن hایمیل الزامیست !", Toast.LENGTH_LONG).show();
} else if (et_mobile.getText().toString().equals("")) {
Toast.makeText(getContext(), "وارد کردن شماره همراه الزامیست !", Toast.LENGTH_LONG).show();
} else {
Intent intent = new Intent(getContext(), Payment.class);
intent.putExtra("Amount", et_amount.getText().toString());
intent.putExtra("Description", et_desc.getText().toString());
intent.putExtra("Email", et_email.getText().toString());
intent.putExtra("Mobile", et_mobile.getText().toString());
intent.putExtra("Mahsol", et_mahsol.getText().toString());
startActivity(intent);
}
}
});
}
您可以像这样绑定您的视图
您好,我想将此代码更改为片段。此代码的基础是 AppCompatActivity,我需要更改,但我不能。
我的Mainactivity使用片段代码显示所有页面
片段 = new FavoritesFragment();
如果我使用 AppCompatActivity 或更改 FavoritesFragment 页面 Mainactivity 出错
public class FavoritesFragment extends Fragment {
public static TextView txt_status ;
EditText et_amount , et_desc , et_email , et_mobile , et_mahsol ;
Button btn_pay ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txt_status = (TextView)findViewById(R.id.txt_status);
et_amount = (EditText)findViewById(R.id.et_amount);
et_desc = (EditText)findViewById(R.id.et_desc);
et_email = (EditText)findViewById(R.id.et_email);
et_mobile = (EditText)findViewById(R.id.et_mobile);
et_mahsol = (EditText)findViewById(R.id.et_mahsol);
btn_pay = (Button)findViewById(R.id.btn_pay);
btn_pay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(et_amount.getText().toString().equals("") || Integer.parseInt(et_amount.getText().toString())<100){
Toast.makeText(MainActivity.this,"مبلغ وارد شده صحیح نمیباشد",Toast.LENGTH_LONG).show();
}else if(et_desc.getText().toString().equals("")){
Toast.makeText(MainActivity.this,"وارد کردن توضیحات الزامیست !",Toast.LENGTH_LONG).show();
}else if(et_email.getText().toString().equals("")){
Toast.makeText(MainActivity.this,"وارد کردن hایمیل الزامیست !",Toast.LENGTH_LONG).show();
}else if(et_mobile.getText().toString().equals("")){
Toast.makeText(MainActivity.this,"وارد کردن شماره همراه الزامیست !",Toast.LENGTH_LONG).show();
}else {
Intent intent = new Intent(MainActivity.this,Payment.class);
intent.putExtra("Amount",et_amount.getText().toString());
intent.putExtra("Description",et_desc.getText().toString());
intent.putExtra("Email",et_email.getText().toString());
intent.putExtra("Mobile",et_mobile.getText().toString());
intent.putExtra("Mahsol",et_mahsol.getText().toString());
startActivity(intent);
}
}
});
}
}
你必须创建一个新的片段,你不能用片段替换 AppCompatActivity。 Fragment 和 Activity 它们是不同的并且有不同的行为。 最好你看看这里 https://developer.android.com/guide/components/fragments.html
Fragment有不同的生命周期回调,需要学习,不是总能找到现成的代码。你应该在这里看 5 分钟 https://developer.android.com/guide/components/fragments.html
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_main, container, false);
txt_status = (TextView) rootView.findViewById((R.id.txt_status);
et_amount = (EditText) rootView.findViewById(R.id.et_amount);
et_desc = (EditText) rootView.findViewById((R.id.et_desc);
et_email = (EditText) rootView.findViewById((R.id.et_email);
et_mobile = (EditText) rootView.findViewById((R.id.et_mobile);
et_mahsol = (EditText) rootView.findViewById((R.id.et_mahsol);
btn_pay = (Button) rootView.findViewById((R.id.btn_pay);
return rootView;
}
@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
btn_pay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (et_amount.getText().toString().equals("") || Integer.parseInt(et_amount.getText().toString()) < 100) {
Toast.makeText(getContext(), "مبلغ وارد شده صحیح نمیباشد", Toast.LENGTH_LONG).show();
} else if (et_desc.getText().toString().equals("")) {
Toast.makeText(getContext(), "وارد کردن توضیحات الزامیست !", Toast.LENGTH_LONG).show();
} else if (et_email.getText().toString().equals("")) {
Toast.makeText(getContext(), "وارد کردن hایمیل الزامیست !", Toast.LENGTH_LONG).show();
} else if (et_mobile.getText().toString().equals("")) {
Toast.makeText(getContext(), "وارد کردن شماره همراه الزامیست !", Toast.LENGTH_LONG).show();
} else {
Intent intent = new Intent(getContext(), Payment.class);
intent.putExtra("Amount", et_amount.getText().toString());
intent.putExtra("Description", et_desc.getText().toString());
intent.putExtra("Email", et_email.getText().toString());
intent.putExtra("Mobile", et_mobile.getText().toString());
intent.putExtra("Mahsol", et_mahsol.getText().toString());
startActivity(intent);
}
}
});
}
您可以像这样绑定您的视图