小编Emi*_*der的帖子

如果我尝试启动服务,为什么会出现InstantiationException?

可能重复:
Android RuntimeException:无法实例化服务

我一直试图解决以下问题,但似乎没有任何工作.

我有一个小部件,通过IntentService更新它的视图.但是在尝试启动此服务时,我不断收到InstantiationException.下面是错误的堆栈跟踪以及用于启动服务的代码.我不相信我需要发布服务的代码,因为它从来没有开始,但如果有人认为不然,我当然会这样做.

堆栈跟踪

05-30 13:58:47.150: ERROR/AndroidRuntime(1163): FATAL EXCEPTION: main
05-30 13:58:47.150: ERROR/AndroidRuntime(1163): java.lang.RuntimeException: Unable to instantiate service syrligt.cashtrack.widgets.StatisticsWidgetUpdateService: java.lang.InstantiationException: syrligt.cashtrack.widgets.StatisticsWidgetUpdateService
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at android.app.ActivityThread.handleCreateService(ActivityThread.java:1904)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at android.app.ActivityThread.access$2500(ActivityThread.java:117)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:982)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at android.os.Looper.loop(Looper.java:123)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at android.app.ActivityThread.main(ActivityThread.java:3647)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at java.lang.reflect.Method.invokeNative(Native Method)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at java.lang.reflect.Method.invoke(Method.java:507)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
05-30 13:58:47.150: ERROR/AndroidRuntime(1163):     at dalvik.system.NativeStart.main(Native Method) …
Run Code Online (Sandbox Code Playgroud)

service android widget android-widget

36
推荐指数
1
解决办法
2万
查看次数

在注释处理器中获取字段类

我正在编写我的第一个Annotations处理器,并且遇到一些看似微不足道的问题,但我找不到任何有关它的信息.

我有一个用我的注释注释的元素

@MyAnnotation String property;
Run Code Online (Sandbox Code Playgroud)

当我将此属性作为处理器中的元素时,我似乎无法以任何方式获取元素的类型.在这种情况下,a希望获得表示String的Class或TypeElement实例.

我尝试实例化容器类型的类对象,Class.forName()但它抛出了ClassNotFoundException.我想这是因为我无法访问包含该类的类加载器?

java annotations

19
推荐指数
1
解决办法
1万
查看次数

如何异步填充列表视图?

我想知道我应该如何实现一个ListAdapter将其视图异步加载到一个ListView?我想这样做是因为我使用来自我的数据库的信息填充列表,这使我的活动有时加载有点慢.

android listview listadapter

15
推荐指数
2
解决办法
1万
查看次数

自定义警报对话框获取不需要的填充

我试图创建一个自定义警报对话框,它大部分工作得很好.功能完美,但视图表现得很奇怪.对话框布局由按钮和列表视图组成.正如您将在下面的屏幕截图中看到的那样,按钮在顶部和底部都有一个边距.

我没有看到这些利润的任何原因,我会非常感谢一些帮助:)

由于某种原因,我无法发布我的xml布局,但我可以确定它不包含填充或任何类型的边距

Java代码:

View dialogView = ((LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.choose_catagory_dialog_layout, null, false);
Button footerButton = (Button) dialogView.findViewById(R.id.choose_catagory_dialog_footer_button);
footerButton.setOnClickListener(ButtonClickEvent);

builder = new AlertDialog.Builder(mContext);
builder.setView(dialogView);
builder.setTitle(R.string.choose_catagory);

builder.setAdapter(spinnerAdapter, ListclickEvent);
alert = builder.create();
alert.getListView().setVerticalFadingEdgeEnabled(false);
alert.setOwnerActivity((Activity) mContext);
Run Code Online (Sandbox Code Playgroud)

截图:

http://cl.ly/3S2y3p3E0e3H2o1I272m

android android-alertdialog

10
推荐指数
2
解决办法
2万
查看次数

在ActivityGroup中暂停和恢复子活动

我正在尝试创建一个自定义的ActivityGroup.除了组子活动的活动生命周期方法之外,我正在使一切正常工作.当我们的子活动进入/退出焦点时如何调用onResume/onPause方法?

我知道tabActivity这样做但我在查看代码时无法找到.

提前致谢!

resume android activitygroup android-activity

7
推荐指数
1
解决办法
1013
查看次数

HTC的"快速启动"不会播放BOOT_COMPLETED意图,也不会从警报管理器中删除意图

我正在制作一个警报应用程序但是在HTC的"快速启动"功能方面遇到了一些问题.此功能可将设备置于深度休眠状态,而不是转动设备.

这给我带来的问题是,因为手机没有关闭(虽然这是用户感知它的方式)但它并没有从警报管理器中消除我的意图,使我的所有警报直接关闭,用户重新打开手机(如果警报已经过期了).这不是我希望用户使用我的应用程序的体验.我想通过"手机关闭时X号警报响起"的通知在启动时通知用户.我不能因为前面提到的原因而这样做,也因为事件虽然手机被"关闭"(没有应用程序在后台运行,没有通知,没有),但在重新打开时它不会广播BOOT_COMPLETED意图.

有谁知道解决这个问题的方法?可能是htc使用的特殊意图动作来指示快速启动事件?

谢谢你的帮助!

android

6
推荐指数
2
解决办法
2189
查看次数

无法在样式中设置资源形状的高度和宽度

我最近制作了我的第一个自定义形状,结果非常好接受一件事.我似乎无法在样式资源中设置高度和可绘制资源.

我没有指定på形状的高度或宽度,因为我想使用不同尺寸的这种形状.所以我在styles.xml文件中设置了高度和宽度.但最终的结果是看起来像使用wrap_content作为高度和宽度的形状,我不想要.

任何帮助是极大的赞赏!

SHAPE - list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape android:shape="rectangle" >

        <solid 
            android:color="@color/list_item_background"
        />

    </shape>
</item>
<item>
    <shape android:shape="rectangle" >

        <gradient 
            android:angle="270"
            android:startColor="@color/list_item_gradient_white"
            android:endColor="@color/list_item_gradient_black"
            android:type="linear"
        />

        <stroke 
            android:color="@color/list_item_stroke"
            android:width="1px"
        />

    </shape>
</item>
Run Code Online (Sandbox Code Playgroud)

样式

<style name="SmallListItem">
    <item name="android:background">@drawable/list_item</item>
    <item name="android:layout_height">69.5dip</item>
    <item name="android:layout_width">fill_parent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

height android shape width

5
推荐指数
1
解决办法
2986
查看次数

自定义列表视图

我试图在ListView上面绘制一个叠加层.所以我采用了最明显的方法,并将我的自定义绘图代码放在我的ListView子类中的super.onDraw(canvas)下面.

令我惊讶的是,列表呈现在我的自定义绘图上方.我知道这可以通过将ListView包装在FrameLayout中轻松完成,但我认为不需要膨胀另一个视图.修复和解释为什么我遇到这个问题会很棒,谢谢!

我的绘图代码看起来像这样:

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    canvas.drawRect(rect, paint);
}
Run Code Online (Sandbox Code Playgroud)

android

3
推荐指数
1
解决办法
2634
查看次数

使用相关子查询时出现问题,内部查询无法找到列

我一直在遇到SQL问题,我正在使用SQLite数据库,遗憾的是没有让以下工作.所有帮助表示赞赏.

我想要以下查询来汇总适合条件的transactionTable的amount列中的所有整数.其中一个条件在外部查询中从行更改为行,因此我希望内部查询对外部查询中的每一行运行一次.

运行此查询时出现以下错误:"没有这样的列:ct.name"我在下面的查询中加粗了我认为错误的行.

表1:categoryTable

columns: id, icon, name, starred
Run Code Online (Sandbox Code Playgroud)

表2:transactionTable

columns: id, date, amount, sign, category
Run Code Online (Sandbox Code Playgroud)

查询:

SELECT id, icon, name, starred, mySum 
    FROM categoryTable ct, 
         (SELECT sum(amount) AS mySum FROM transactionTable 
          WHERE date<'1992' AND date>'1990' 
          AND sign = '-' AND category=ct.name) AS sumTable 
    WHERE mySum!=0 
    ORDER BY mySum DESC
Run Code Online (Sandbox Code Playgroud)

谢谢!

sql sqlite subquery

2
推荐指数
1
解决办法
449
查看次数