2016-04-30 89 views
0

只是無法弄清楚什麼是錯的。在活動中,下面的代碼就像一個魅力。但是,當我用它片段中,應用程序與此錯誤切換裏面的片段

java.lang.NoClassDefFoundError 

這裏崩潰的代碼

public class design extends Fragment{ 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View view = inflater.inflate(R.layout.fragment_design, container, false); 
    Switch night_mode_always = (Switch)view.findViewById(R.id.sNight); 

    night_mode_always.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { 
     @Override 
     public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
      Toast.makeText(getActivity(), "TEST", Toast.LENGTH_LONG).show(); 
     } 
    }); 

    return view; 
} 
} 

一旦該setOnCheckedChangeListener被調用時,應用程序崩潰......我嘗試了不同的方式來實施活動,上下文,嘗試與OnClick ...但我可以弄清楚如何用開關做到這一點。歡迎任何幫助。謝謝!

UPDATE

E/AndroidRuntime: FATAL EXCEPTION: main 
Process: com.test.testapp, PID: 25299 
java.lang.NoClassDefFoundError: com.test.testapp.settings.design$1 
com.test.testapp.settings.design.onCreateView(design.java:32) 
+0

把你的日誌和異常發現你有什麼問題完全一樣。 – Amir

回答

1

您需要使用的設計庫:

compile 'com.android.support:design:23.3.0' 

我也不能確定你使用的是什麼類型的片段的。它是支持庫的片段嗎?如果是,你可以使用交換機的程序兼容性版本:

http://www.truiton.com/2015/03/android-switch-button-example/

開關看起來是這樣的:

<android.support.v7.widget.SwitchCompat 
    android:id="@+id/switch_compat" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginLeft="50dp" 
    android:layout_marginStart="50dp" 
    android:layout_marginTop="25dp" 
    android:checked="false" 
    android:text="SwitchCompat (SDK v7+)" 
    android:textOff="OFF" 
    android:textOn="ON" 
    app:showText="true"/> 
+0

謝謝,但沒有奏效。我已經在使用設計庫。我使用導入android.support.v4.app.Fragment ;.我將Switch切換到了SwitchCompat,但它仍然在同一個地方崩潰。 – Wladislaw

+0

您的鏈接幫助,將立即更新我的代碼。謝謝! – Wladislaw