안녕하세요. Frends입니다. 다음 페이지의 버튼에 내 애플리케이션의 마법사가 활성화되어 있어야합니다. 이름에 단어가 하나 있고 마피아 번호 legth가 10 인 경우 활성화되어 있어야합니다. 조각 Activty 여기 수 있도록 내 코드를 살펴해야합니다조각과 활동 사이에 데이터를 전달하면 null 포인트 예외가 발생합니다.
조각 활동
public class Intro_Main extends FragmentActivity implements ButtonenableListner{
DataModel data;
Button next;
Context context;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.l_intro_main);
context=this;
data=new DataModel();
next=(Button)findViewById(R.id.button);
if(findViewById(R.id.fm)!=null)
{
Step1 s1=new Step1();
s1.setArguments(getIntent().getExtras());
getSupportFragmentManager().beginTransaction().add(R.id.fm,s1).commit();
}
}
public void setname(String s){
data.Name=s;
}
public void setnumber(String s){
data.Number=s;
}
public void goto2(View v)
{
Step2 s2 =new Step2();
s2.setArguments(getIntent().getExtras());
FragmentManager fragmentManager;
fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.setCustomAnimations(R.anim.enter, R.anim.exit, R.anim.pop_enter, R.anim.pop_exit);
transaction.replace(R.id.fm, s2);
transaction.addToBackStack(null);
transaction.commit();
}
@Override
public void enableButton(Boolean b) {
if (b)
next.setEnabled(true);
else
next.setEnabled(false);
}
}
조각
public class Step1 extends android.support.v4.app.Fragment{
EditText name,mob;
public String s;
public ButtonenableListner listner;
Boolean s1,s2=false;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view=inflater.inflate(R.layout.f_step_1, container, false);
name=(EditText)view.findViewById(R.id.editText);
mob=(EditText)view.findViewById(R.id.editText2);
name.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
if (i3 != 0)
{
s2=true;
}
else
s2=false;
checkbothfield();
}
@Override
public void afterTextChanged(Editable editable) {
}
});
mob.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
if (i3==10)
{
s2=true;
}
else
s2=false;
checkbothfield();
}
@Override
public void afterTextChanged(Editable editable) {
}
});
return view;
}
private void checkbothfield() {
if (s1==true && s2==true)
listner.enableButton(true);
else
listner.enableButton(false);
}
@Override
public void onStop() {
DataModel.Name=name.getEditableText().toString();
DataModel.Number=mob.getEditableText().toString();
super.onStop();
}
@Override
public void onPause() {
DataModel.Name=name.getEditableText().toString();
DataModel.Number=mob.getEditableText().toString();
super.onPause();
}
}
여기에서 막혔어요 제발 도와주세요 내가 일부러
해결책 Parth를 얻었습니까 ?? – Rohan
Thnk you Rohan 도움을 받으 셨습니다. –