如何修复此按钮无法进入活动页面?

问题描述 投票:0回答:2
public class select_fragment extends Fragment {

    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_select, null);


    }
    private void button_parking(){

        Intent myIntent = new Intent(f, parking.class);
        startActivity(myIntent);
    }
}
java android android-button
2个回答
0
投票

试试这个...

public class select_fragment extends Fragment {

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup 
container, @Nullable Bundle savedInstanceState) {

    Button your_button = (Button) getActivity.findViewById(R.id.your_id_button)

    your_button.setOnClickListener(new OnClickListener() {
    public void onClick(View v)
    {
       button_parking();
    } 
    });
    return inflater.inflate(R.layout.fragment_select, null);

    }

    private void button_parking(){
    Intent myIntent = new Intent(getActivity(), parking.class);
    startActivity(myIntent);
}

}


0
投票

您尚未将视图绑定到片段,因此单击按钮无法工作。您需要使用findViewById()绑定视图。通常你需要通过重写onViewCreated()来做这样的绑定:

public class select_fragment extends Fragment {

    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_select, null);
    }

    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

         // bind the view here.
         Button button = findViewById(R.id.your_button);
         button.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 //call button method here
                 button_parking();
             }
         });
    }

    private void button_parking() {
        Intent myIntent = new Intent(f, parking.class);
        startActivity(myIntent);
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.