Skip to main content

How to add a fragment to an activity in Kotlin Android

How to add a fragment to an activity in Kotlin Android.

Here's a detailed step-by-step tutorial on how to add a fragment to an activity in Kotlin for Android.

Step 1: Create a new project

Create a new Android project in Android Studio and choose an empty activity template. Give your project a name and set the package name as per your preference.

Step 2: Define the fragment layout

Create a new XML layout file for your fragment. This layout will define the user interface of your fragment. You can create this file by right-clicking on the res directory, selecting New -> XML -> Layout XML File. Give it a name, such as fragment_example.xml, and define the necessary views and their properties.

Step 3: Create the fragment class

Create a new Kotlin class for your fragment. This class will define the logic and behavior of your fragment. You can create this class by right-clicking on the package where you want to create the fragment, selecting New -> Kotlin Class/File. Give it a name, such as ExampleFragment, and choose Fragment as the superclass.

class ExampleFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
// Inflate the fragment layout
return inflater.inflate(R.layout.fragment_example, container, false)
}
}

Step 4: Add the fragment to the activity layout

Open the XML layout file for your activity (usually named activity_main.xml). Add a FrameLayout or any other container view to hold the fragment.

<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>

Step 5: Initialize the fragment in the activity

In your activity class, initialize the fragment and add it to the container view.

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

// Initialize the fragment
val fragment = ExampleFragment()

// Add the fragment to the container view
supportFragmentManager.beginTransaction()
.add(R.id.fragment_container, fragment)
.commit()
}
}

Step 6: Run the app

Build and run your app on an emulator or a physical device to see the fragment in action. You should now see the fragment's layout displayed within the activity.

Congratulations! You have successfully added a fragment to an activity in Kotlin for Android.

Note: If you want to replace an existing fragment with a new one, you can use the replace() method instead of add() in the beginTransaction() block of the activity. Also, make sure to handle fragment transactions properly when dealing with back stack and fragment navigation.