找到 2041 篇文章 关于移动开发
5K+ 次查看
此示例演示了 Android Studio 中的 Fragment 教程。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了按钮视图和线性布局来显示不同的片段。步骤 3 - 将以下代码添加到 src /MainActivity.java 包 com.example.myapplication; 导入 android.os.Build; 导入 android.os.Bundle; 导入 android.support.annotation.RequiresApi; 导入 android.support.v4.app.FragmentManager; 导入 android.support.v4.app.FragmentTransaction; 导入 android.support.v7.app.AppCompatActivity; 导入 android.view.View; 公共类 MainActivity 扩展 AppCompatActivity { ... 阅读更多
368 次查看
此示例演示了 Android 中 Parcelable 和 Serializable 的区别。Serializable Serializable 是一个标记接口,也可以称为空接口。它没有任何预实现的方法。Serializable 将对象转换为字节流。因此用户可以在一个活动与另一个活动之间传递数据。Serializable 的主要优点是创建和传递数据非常容易,但与 Parcelable 相比,它是一个较慢的过程。下面显示了一个简单的 Serializable 示例 - 导入 java.io.Serializable; 类 serializableObject 实现 Serializable { String name; public serializableObject(String name) { this.name = name; ... 阅读更多
3K+ 次查看
此示例演示了 Android 中 Parcelable 和 Serializable 的区别。Serializable Serializable 是一个标记接口,也可以称为空接口。它没有任何预实现的方法。Serializable 将对象转换为字节流。因此用户可以在一个活动与另一个活动之间传递数据。Serializable 的主要优点是创建和传递数据非常容易,但与 Parcelable 相比,它是一个较慢的过程。下面显示了一个简单的 Serializable 示例 - 导入 java.io.Serializable; 类 serializableObject 实现 Serializable { String name; public serializableObject(String name) { ... 阅读更多
3K+ 次查看
此示例演示了如何在 Android 中检测 Home 键按下。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了一个文本视图。步骤 3 - 将以下代码添加到 src/MainActivity.java 包 com.example.myapplication; 导入 android.app.Activity; 导入 android.os.Bundle; 导入 android.view.View; 导入 android.widget.TextView; 导入 android.widget.Toast; 公共类 MainActivity 扩展 Activity { TextView text; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ... 阅读更多
95 次查看
此示例演示了 Android RecyclerView 中 onItemClickListner 的最佳替代方案。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了 RecyclerView。步骤 3 - 将以下代码添加到 src/MainActivity.java 包 com.example.myapplication; 导入 android.annotation.TargetApi; 导入 android.os.Build; 导入 android.os.Bundle; 导入 android.support.v7.app.AppCompatActivity; 导入 android.support.v7.widget.DefaultItemAnimator; 导入 android.support.v7.widget.DividerItemDecoration; 导入 android.support.v7.widget.LinearLayoutManager; 导入 android.support.v7.widget.RecyclerView; 导入 android.support.v7.widget.Toolbar; 导入 android.widget.TextView; 导入 java.util.ArrayList; 公共类 MainActivity 扩展 AppCompatActivity { ... 阅读更多
3K+ 次查看
此示例演示了 Android RecyclerView GridLayoutManager 列间距。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了 RecyclerView。步骤 3 - 将以下代码添加到 src/MainActivity.java 包 com.example.myapplication; 导入 android.annotation.TargetApi; 导入 android.os.Build; 导入 android.os.Bundle; 导入 android.support.v4.content.ContextCompat; 导入 android.support.v7.app.AppCompatActivity; 导入 android.support.v7.widget.DefaultItemAnimator; 导入 android.support.v7.widget.DividerItemDecoration; 导入 android.support.v7.widget.GridLayoutManager; 导入 android.support.v7.widget.LinearLayoutManager; 导入 android.support.v7.widget.RecyclerView; 导入 android.support.v7.widget.Toolbar; 导入 android.widget.TextView; 导入 android.widget.Toast; 导入 java.util.ArrayList; 公共类 ... 阅读更多
797 次查看
此示例演示了如何以编程方式卸载 APK。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了一个文本视图。步骤 3 - 将以下代码添加到 src/MainActivity.java 包 com.example.myapplication; 导入 android.app.Activity; 导入 android.content.Intent; 导入 android.content.SharedPreferences; 导入 android.net.Uri; 导入 android.os.Bundle; 导入 android.support.v4.content.pm.ShortcutInfoCompat; 导入 android.support.v4.content.pm.ShortcutManagerCompat; 导入 android.support.v4.graphics.drawable.IconCompat; 导入 android.view.View; 导入 android.widget.TextView; 导入 android.widget.Toast; 公共类 MainActivity 扩展 Activity { private static final String PREF_KEY_SHORTCUT_ADDED = "Sairam"; TextView ... 阅读更多
82 次查看
在进入示例之前,我们应该知道什么是 ArrayBlockingQueue,它以 FIFO 方式运行,第一个元素将存在最长时间,队列的最后一个元素将存在最短时间。此示例演示了如何在 Android ArrayBlockingQueue 中使用 take()。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了一个文本视图来显示 ... 阅读更多
120 次查看
在进入示例之前,我们应该知道什么是 PriorityBlockingQueue。它是一个无界队列,遵循与优先级队列相同的顺序。Priority Blocking Queue 的主要用途是处理内存不足错误。此示例演示了如何在 Android PriorityBlockingQueue 中使用 take()。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了一个文本视图来显示 PriorityBlockingQueue ... 阅读更多
108 次查看
在进入示例之前,我们应该知道什么是 CopyOnWriteArrayList。它是 ArrayList 的线程安全变体,通过创建基础数组的新副本来执行添加、设置等操作。此示例演示了如何在 Android CopyOnWriteArrayList 中使用 subList()。步骤 1 - 在 Android Studio 中创建一个新项目,转到文件 ⇒ 新建项目,并填写所有必需的详细信息以创建一个新项目。步骤 2 - 将以下代码添加到 res/layout/activity_main.xml。 在上述代码中,我们使用了一个文本视图来显示 CopyOnWriteArrayList 元素。步骤 3 - 将以下代码 ... 阅读更多