diff --git a/res/xml/billing_cycle.xml b/res/xml/billing_cycle.xml
index 3720240..e9a34f1 100644
--- a/res/xml/billing_cycle.xml
+++ b/res/xml/billing_cycle.xml
@@ -16,6 +16,7 @@
 
 <PreferenceScreen
     xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:settings="http://schemas.android.com/apk/res-auto"
     android:key="billing_cycle_settings"
     android:title="@string/billing_cycle">
 
@@ -39,4 +40,10 @@
         android:key="data_limit"
         android:title="@string/data_limit" />
 
+    <com.android.settingslib.widget.FooterPreference
+        android:key="billing_cycle_footer"
+        android:title="@string/data_warning_footnote"
+        android:selectable="false"
+        settings:searchable="false"/>
+
 </PreferenceScreen>
diff --git a/src/com/android/settings/datausage/BillingCycleSettings.java b/src/com/android/settings/datausage/BillingCycleSettings.java
index 87b8198..9c46d39 100644
--- a/src/com/android/settings/datausage/BillingCycleSettings.java
+++ b/src/com/android/settings/datausage/BillingCycleSettings.java
@@ -118,8 +118,6 @@
         mEnableDataLimit = (SwitchPreference) findPreference(KEY_SET_DATA_LIMIT);
         mEnableDataLimit.setOnPreferenceChangeListener(this);
         mDataLimit = findPreference(KEY_DATA_LIMIT);
-
-        mFooterPreferenceMixin.createFooterPreference().setTitle(R.string.data_warning_footnote);
     }
 
     @Override
diff --git a/tests/robotests/src/com/android/settings/datausage/BillingCycleSettingsTest.java b/tests/robotests/src/com/android/settings/datausage/BillingCycleSettingsTest.java
index 2c0155f..eea6388 100644
--- a/tests/robotests/src/com/android/settings/datausage/BillingCycleSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/BillingCycleSettingsTest.java
@@ -47,8 +47,6 @@
 
 import com.android.settings.testutils.shadow.ShadowFragment;
 import com.android.settingslib.NetworkPolicyEditor;
-import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixinCompat;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -58,7 +56,6 @@
 import org.robolectric.RobolectricTestRunner;
 import org.robolectric.RuntimeEnvironment;
 import org.robolectric.annotation.Config;
-import org.robolectric.util.ReflectionHelpers;
 
 @RunWith(RobolectricTestRunner.class)
 public class BillingCycleSettingsTest {
@@ -162,9 +159,6 @@
         when(mConnectivityManager.isNetworkSupported(anyInt())).thenReturn(true);
         final SwitchPreference preference = mock(SwitchPreference.class);
         when(billingCycleSettings.findPreference(anyString())).thenReturn(preference);
-        final FooterPreferenceMixinCompat footer = mock(FooterPreferenceMixinCompat.class);
-        ReflectionHelpers.setField(billingCycleSettings, "mFooterPreferenceMixin", footer);
-        when(footer.createFooterPreference()).thenReturn(mock(FooterPreference.class));
 
         billingCycleSettings.onCreate(Bundle.EMPTY);
 
