- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个从数据库中填充的 ListView 。我想在下面的代码中扩展 ActionBarActivity 而不是 ListActivity(但我仍然需要它),因为我有一些使用 Action Bar 的功能。
Java 类:
public class ChooseHelp extends ListActivity {
ListView listHelp;
private final ArrayList<String> results = new ArrayList<>();
public final static String ID_HELP = "com.module.help._ID";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_help);
listHelp = (ListView) findViewById(android.R.id.list);
listHelp.setOnItemClickListener(onListClick);
openAndQueryDatabase();
displayResultList();
}
private void displayResultList() {
setListAdapter(new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, results));
getListView().setTextFilterEnabled(true);
}
private final AdapterView.OnItemClickListener onListClick = new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent i = new Intent(ChooseHelp.this, HelpContent.class);
i.putExtra(ID_HELP, String.valueOf(id));
startActivity(i);
}
};
private void openAndQueryDatabase() {
try {
DBHelper dbHelper = new DBHelper(this.getApplicationContext());
SQLiteDatabase newDB = dbHelper.getWritableDatabase();
String tableName = "tbl_Help";
Cursor c = newDB.rawQuery("SELECT help FROM " +
tableName +
" LIMIT 18", null);
if (c != null) {
if (c.moveToFirst()) {
do {
String HelpTopic = c.getString(c.getColumnIndex("help_topic"));
results.add(HelpTopic);
} while (c.moveToNext());
}
}
} catch (SQLiteException se) {
Log.e(getClass().getSimpleName(), "Could not create or Open the database");
}
}
}
XML
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.module.example.ChooseHelp">
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:entries="@array/allTopics" />
</RelativeLayout>
我正在尝试做 this , 但它不符合我的设计
请帮帮我。非常感谢。
最佳答案
您可以像这样使用 ListView 创建布局:
activity_help.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent">
<ListView
android:id="@+id/listview"
android:layout_height="match_parent"
android:layout_width="match_parent">
</LinearLayout>
然后进入你的 ActionBarActivity:
public class ChooseHelp extends ActionBarActivity {
private ArrayList<String> results;
ListView listView;
ArrayAdapter listAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_help);
results = new ArrayList<>();
openAndQueryDatabase();
listView = (ListView)findViewById(R.id.listview);
listAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, results);
listView.setAdapter(listAdapter);
listView.setOnItemClickListener(onListClick);
}
关于java - 比 ListActivity 扩展 ActionBarActivity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30686369/
这个问题已经有答案了: ActionBarActivity is deprecated [duplicate] (3 个回答) 已关闭 8 年前。 如何解决 Eclipse 中导入 android.s
我正在学习如何在 Android Studio 中使用 NDK 的教程:http://www.ph0b.com/android-studio-gradle-and-ndk-integration/ 我
当我尝试导入它时,收到错误“无法解析符号 ActionBarActivity”。 我阅读了有关同一问题的问题并阅读了答案并尝试解决该问题,但无济于事。 我使用的是 android studio 版本
我正在使用这个模板 https://github.com/kanytu/android-material-drawer-template只是为了尝试 material design,所以我实现了一些
在我的 android Studio 中,编译器无法找到 ActionBarActivity。因此,我遇到了很多错误。编译器无法导入 ActionBarActivity 和 ActionBar 类。这
这个问题在这里已经有了答案: Why was ActionBarActivity deprecated (3 个回答) 关闭6年前。 其实没有问题。项目编译并运行。但我不明白什么是删除类名的意思(An
几天前,我将 android studio 和 gradle 更新到了 4.4.1。当我尝试创建一个类主 Activity 来扩展 actionbaractivity 时,如下所示 publi
我正在尝试使用 GitHub 存储库中的侧菜单。菜单的动画需要一个类 ViewAnimator 来获取参数 ActionBarActivity,在示例中给出为 this(即 MainActivity,
我有一个使用搜索小部件的有效搜索实现,就像在从 Activity 扩展的 Activity 内部一样: @Override public boolean onCreateOptionsMenu(Men
我一直在尝试遵循 Android 聊天应用程序的教程。 我已经完成了使用 AppCompatActivity 和 ActionBarActivity 所需的所有配置,但是当我尝试运行我的应用程序时,它
我对 ActionBarActivity 和 ViewPager 有疑问。 在我的“主 Activity ”上,这是一个 ActionBarActivity,我有一些选项卡,它们是 fragment
是否可以将操作栏添加到 android 应用程序:1) 没有子类化 ActionBarActivity2) 支持 Gingerbread 和更新 我搜索了 google 和 SO,没有结果。 我问这个
我在 ActionBarActivity 中搜索了多个 Intent 和 fragment 的示例。我正在从 Deitel 系列和其他信息丰富的资源中学习 android 编程。我面临的障碍是从使用
我正在使用 Toolbar在 fragment (覆盖整个屏幕)内,我想显示后退按钮,但我不能使用 getSupportActionBar().setDisplayHomeAsUpEnabled(tr
我正在尝试从 ActionBarActivity 扩展我的类,但不能,我已经尝试了所有可能的方法。我正在导入 android.support.v7.app.ActionBarActivity;我想按照
我有一个扩展 FragmentActivity 和导入 android 库 v4 的类。现在我想在我的 Activity 中实现 Navigation Drawer,我想扩展 ActionBarAct
我在我的应用程序中使用 android.support.v7.widget.Toolbar。 我可以通过 getSupportActionBar().setIcon() 设置图标。并通过 toolba
我已经尝试使缓存无效并重新启动,但它仍然显示并且不会像以前那样编译和运行。如果我没记错的话,我尝试重命名类文件,并且一定是更改了造成这种情况的名称。它还在 findViewById、.oncreate
我有一个非常奇怪的问题。当我在单击硬件菜单按钮(Android 2.3 设备)后使用 ActionBarActivity 时,应用程序意外关闭,没有任何特定错误。 Logcat 只给出: W/KeyC
我在扩展 ActionBarActivity 时遇到错误捕获。如果我扩展 Activity 则没有错误。 事情是在我的其他 Activity 中它完美地工作。起初,我认为这是因为我之前的 Activi
我是一名优秀的程序员,十分优秀!