-1
私は3つのタブを表示するアクティビティを持っています。私は、Textview、ボタン、SQLiteからのデータを表示するためのエディットボックスを含むアクティビティ(AppCompatActivityを拡張)を呼びたいと思います。 2番目のタブをクリックすると、アクティビティが表示されますが、画面全体を占有し、2番目のタブ内に表示されません。タブ内のAppCompatActivityを拡張するコールアクティビティ:Android Studio
私は自分のタブにページャークラスを使用しています。
これは、その中に私の活動を表示すべきフラグメント]タブで:
public class settings_tab extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//Returning the layout file after inflating
//Change R.layout.tab1 in you classes
Intent intent = new Intent(getActivity(), MainActivity.class);
startActivity(intent);
return inflater.inflate(R.layout.activity_settings_tab, container, false);
}
}
フラグメントの使用に関する私の問題は、アクティビティのコードをフラグメントクラスに転送すると、私のコードの一部がエラーになることです。例:final Context context = this; < - この行にはエラーがあります。また、これは:setContentView(R.layout.activity_main); ...私はこのコードの代わりにフラグメントを使用しているかわかりません。 –
@GlennC: "アクティビティのコードをフラグメントクラスに転送すると、いくつかのコードがエラーになる" - 別のスタックオーバーフローに関する質問をして、[mcve]でコードを表示し、エラー "を意味する。 'Fragment'は' Activity'ではないので、いくつかのコード変更が必要です。 'final Context context = this'に関しては、行は必要ではなく、' this'の代わりに 'getActivity()'を使用してください。 – CommonsWare
これは私が必要とするものです。タブでのアクティビティは非難されているので、コードで問題を解決するにはフラグメントクラスに移してください。私はアンドロイドには新しく、まだレイアウトデザインを探っています。情報のおかげで。 「エラーがあります」とは、Android Studioに下線が表示されていることを意味します。 –