android - 如何在ListView父级中实例化AppCompatActivity?

标签 android listview android-appcompat

我是安卓新手。我使用一个扩展 ListActivity 的类。

public class ToLines extends ListActivity implements SimpleGestureFilter.SimpleGestureListener{}

但是,在这个类中我想从 AppCompatActivity 调用一个方法。所以我尝试像这样实例化 AppCompatActivity 类:

AppCompatActivity compat = new AppCompatActivity();
            compat.setSupportActionBar(toolbar);
            compat.getSupportActionBar().setDisplayHomeAsUpEnabled(true);

但是,代码显示错误。这是我的日志猫:

12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime: FATAL EXCEPTION: main
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime: Process: com.example.fahrudin.sjbapps, PID: 14754
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.fahrudin.sjbapps/com.example.fahrudin.sjbapps.ToLines}: java.lang.NullPointerException
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2429)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:166)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:136)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5584)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at java.lang.reflect.Method.invokeNative(Native Method)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:515)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at dalvik.system.NativeStart.main(Native Method)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:  Caused by: java.lang.NullPointerException
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:69)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatDelegateImplV7.<init>(AppCompatDelegateImplV7.java:145)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.java:28)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:29)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:135)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:117)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:456)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.support.v7.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:99)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at com.example.fahrudin.sjbapps.ToLines.onCreate(ToLines.java:86)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.Activity.performCreate(Activity.java:5447)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393)
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:166) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:136) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5584) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at java.lang.reflect.Method.invokeNative(Native Method) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:515) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084) 
12-15 12:00:20.923 14754-14754/com.example.fahrudin.sjbapps E/AndroidRuntime:     at dalvik.system.NativeStart.main(Native Method) 

当我的类扩展ListView时,我应该怎么做才能调用AppCompatActivity的方法?

最佳答案

我认为您应该使用 AppCompatActivity 扩展您的主类并使用 Listfragment 而不是 ListActivity,您将实现您想要的。

关于android - 如何在ListView父级中实例化AppCompatActivity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34281642/

相关文章:

php - Android 推送通知 PHP 代码在 3rd 方服务器中不工作,在本地服务器中工作

java - 将 findElementById ("elementID")与 appium 用于 native Android 应用程序。错误: "Locator strategy ' css selector"is not supported"

android - 工具栏默认样式和导航图标

java - NoSuchMethodError : android. support.v4.view.ViewCompat.isAttachedToWindow

android - 如何从 Android appcompat v7 21 库中实现 DrawerArrowToggle

Java/安卓 : Continuously rotate ImageView image on tap of left/right side of screen

Android - SaxParser 错误 : ParseException: At line 1, 第 0 列:格式不正确(无效 token )

css - listview asp页面添加inline display none到listview html元素

android - 如何在 ListView 中将 webview 作为一行加载?

c# - 使用文本框搜索 ListView 项目