我尝试了Android兼容包提供的示例.FragmentTabsPager崩溃并出现以下错误:
11-17 19:00:27.414: E/AndroidRuntime(5401): FATAL EXCEPTION: main
11-17 19:00:27.414: E/AndroidRuntime(5401): java.lang.NoClassDefFoundError: com.example.android.supportv4.app.LoaderCustomSupport$AppListFragment
11-17 19:00:27.414: E/AndroidRuntime(5401): at com.example.android.supportv4.app.FragmentTabsPager.onCreate(FragmentTabsPager.java:60)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2633)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2685)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.app.ActivityThread.access$2300(ActivityThread.java:126)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2038)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.os.Handler.dispatchMessage(Handler.java:99)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.os.Looper.loop(Looper.java:123)
11-17 19:00:27.414: E/AndroidRuntime(5401): at android.app.ActivityThread.main(ActivityThread.java:4633)
11-17 19:00:27.414: E/AndroidRuntime(5401): at java.lang.reflect.Method.invokeNative(Native Method)
11-17 19:00:27.414: E/AndroidRuntime(5401): at java.lang.reflect.Method.invoke(Method.java:521)
11-17 19:00:27.414: E/AndroidRuntime(5401): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
11-17 19:00:27.414: E/AndroidRuntime(5401): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
11-17 …Run Code Online (Sandbox Code Playgroud) 我在我的所有应用程序片段中使用此代码,如果我使用静态方法应该会更好.我该怎么做?这种静态方法也适用于片段,而不仅仅是活动.
我的非静态showToast方法:
public void showToast(String msg){
Toast.makeText(getActivity().getApplicationContext(), msg, Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)
使用这种静态方法解决了感谢@KishanDhamat
public static void showToast(Context context, String text) {
Toast.makeText(context, text, Toast.LENGTH_LONG).show();
Run Code Online (Sandbox Code Playgroud)
}
我如何从片段中清除共享偏好?谢谢
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
sharedPreferences = getActivity().getSharedPreferences("login.conf", Context.MODE_PRIVATE);
editor = sharedPreferences.edit();
editor.clear();
editor.commit();
Intent logout = new Intent(getActivity(), LoginActivity.class);
startActivity(logout);
Log.d(TAG, sharedPreferences.getString("username", ""));
Log.d(TAG, sharedPreferences.getString("password", ""));
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_fragment_logout, container, false);
}
Run Code Online (Sandbox Code Playgroud)
那是我的片段
我有两个不同的活动,我想在另一个活动中同时显示它们.有没有办法做到这一点?
提前致谢!
android android-layout android-fragments android-view android-activity
我想将 my_fragment1 实现到 tab1 片段中,如何将片段组合成片段。
表1
public class Tab1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.tab1, container, false);
list_fragment fm = (list_fragment)getActivity().getSupportFragmentManager().findFragmentById(R.id.My_Container_1_ID);
}
Run Code Online (Sandbox Code Playgroud)
表1.xml
<FrameLayout
android:id="@+id/My_Container_1_ID"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:layout_alignParentTop="true"
android:layout_toLeftOf="@+id/button"
android:layout_toStartOf="@+id/button">
</FrameLayout>
Run Code Online (Sandbox Code Playgroud) 我有一个数字字符串,我想将字符串的前三个字符更改为另一个字符
假设我有一个像0333XXXXXXXand的字符串 +38333XXXXXXX。如果字符串的第一个字符是+38我想用“0”替换它,而其余的字符串保持不变这是我的代码
private String modifyNumber(String num) {
if (num.startsWith("+38")) {
num.replaceFirst("+38", "0");}
return num;}
Run Code Online (Sandbox Code Playgroud)
“+38”在num.replaceFirst.