小编tee*_*joe的帖子

在AndroidManifest.xml中注册本地BroadcastReceiver?

无论如何在AndroidManifest.xml中注册BroadcastReceiver并接收由LocalBroadcastManager发送的广播?

目前我必须打电话

registerReceiver(BroadcastReceiver receiver, IntentFilter filter) 
Run Code Online (Sandbox Code Playgroud)

要注册一个Receiver,在AndroidManifest.xml中声明将无法正常工作.但这意味着我必须确切地知道接收者的包名和类名,而不仅仅是意图过滤器.是否可以在清单文件中声明接收器?

以下是我目前的代码.

AndroidManifest.xml中:

...
<receiver 
    android:name="com.example.test.MessageReceiver"
    android:enabled="true" >
    <intent-filter>
        <action android:name="com.m2x.test.intent.MESSAGE_RECEIVED" />
    </intent-filter>
</receiver>
...
Run Code Online (Sandbox Code Playgroud)

MainActivity.java:

Intent intent = new Intent();
intent.setAction("com.m2x.test.intent.MESSAGE_RECEIVED");

LocalBroadcastManager manager = LocalBroadcastManager.getInstance(mContext.get());
manager.sendBroadcast(intent);
Run Code Online (Sandbox Code Playgroud)

MessageReceiver.java

public class MessageReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {

        if (intent.getAction().equals("com.m2x.test.intent.MESSAGE_RECEIVED")) {
            Toast.makeText(context, "user message received", Toast.LENGTH_SHORT).show();
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

xml android broadcastreceiver localbroadcastmanager

28
推荐指数
1
解决办法
9295
查看次数

如何在资源中设置ListView样式?

我想在Theme中设置ListView样式,以便Application的所有ListView都将继承样式.我的代码看起来像这样:

style.xml

<!-- Light Theme of the Application -->
<style name="AppTheme.Light" parent="Theme.Sherlock.Light">
    <item name="actionBarStyle">@style/ActionBar.Green</item>
    <item name="android:absListViewStyle">@style/AbsListViewStyle.Light</item>
</style>

<style name="AbsListViewStyle.Light" parent="android:style/Widget.AbsListView">
    <item name="background">@color/background_light</item>
    <item name="android:divider">@color/light_gray</item>
    <item name="android:dividerHeight">1dp</item>
    <item name="android:listSelector">@drawable/actionbar_background_green</item>
    <item name="android:drawSelectorOnTop">false</item>
    <item name="android:cacheColorHint">#00000000</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我在AndroidManifest.xml中设置了Activity的主题.但似乎该样式不适用于ListView.这是为什么?

android styles

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

如何在android中实现跨进程锁?

我正在编写一个供多个APP使用的库项目.由于某种原因,我必须为不同的APP做一个函数互斥,所以我需要一个跨进程锁.但据我所知,在android中,APP只能在内部存储中写入自己文件的目录,外部存储不可靠,因为某些设备没有.所以文件锁似乎不适合我,所以有没有其他方法来实现跨进程锁?

谢谢〜

android locking cross-process

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