小编Ven*_*yap的帖子

动态获取 XML 中的应用程序 ID

我在应用程序中使用快捷方式,并且有多种产品风格。我想动态获取目标包的应用程序 ID。

我已经给了${applicationId},但是没用。我尝试过${packageName}没有用。还有其他选择吗?

<shortcut
    android:enabled="true"
    android:icon="@drawable/ic_barcode_icon"
    android:shortcutId="bar_code"
    android:shortcutShortLabel="@string/shortcuts_my_bar_code">
    <intent
        android:action="android.intent.action.VIEW.myBarCode"
        android:targetClass="com.appemirates.clubapparel.home.HomeActivity"
        android:targetPackage="${applicationId}" />
</shortcut>
Run Code Online (Sandbox Code Playgroud)

android

8
推荐指数
1
解决办法
2981
查看次数

ItemTouchHelper 获取滑动方向

我需要根据滑动方向更改行项目的背景颜色,如果向右滑动则将颜色更改为绿色,如果向左滑动则将颜色更改为红色。

但我发现很难获得滑动的方向。

这是我的代码。

public class SimpleItemTouchHelperCallback extends ItemTouchHelper.Callback 
{

private final ItemTouchHelperAdapter mAdapter;
public SimpleItemTouchHelperCallback(ItemTouchHelperAdapter mAdapter) {
    this.mAdapter = mAdapter;
}

@Override
public boolean isItemViewSwipeEnabled() {
    return true;
}

@Override
public boolean isLongPressDragEnabled() {
    return false;
}

@Override
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
    return false;
}

@Override
public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
    final int dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN;
    final int swipeFlags = ItemTouchHelper.START |  ItemTouchHelper.END;
    return makeMovementFlags(dragFlags,swipeFlags);
}

@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, …
Run Code Online (Sandbox Code Playgroud)

android

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

组合2个或多个分页数据流

我正在进行 2 个并行 API 调用来请求分页数据。我需要在获取结果后合并两个 API 调用的结果并将分页数据提交给适配器。

viewLifecycleOwner.lifecycleScope.launchWhenStarted {
            val assignedList = async {
                assignedTaskViewModel.getPagingTasks(getAssignedTasks)
            }

            val unscheduledTasksList = async {
                assignedTaskViewModel.getUnscheduledChores(getUnscheduledTasks)
            }

            unscheduledTasksList.await().combine(assignedList.await()) { unschedule, assign ->
                Timber.d("combining 2 calls")
                //TODO need to show unscheduledTasksList first followed by assignedList
            }.collectLatest {
                it.map { value ->
                    Timber.d("paging data = $value")
                }
                assignedTasksPagingAdapter?.submitData(it)
            }
        }
Run Code Online (Sandbox Code Playgroud)

有没有办法转换 pagingData,以便我可以合并 2 个 API 调用的结果并将其作为单个分页数据提交给适配器?

android kotlin kotlin-flow android-paging-3

5
推荐指数
0
解决办法
627
查看次数

How to clear the value of getIntent().getAction()

I'm launching an activity using shortcut and performing some operations. I want to set empty value to getIntent().getAction()

private static final String SHORT_CUT_MY_BARCODE = "android.intent.action.VIEW.myBarCode";

if (SHORT_CUT_MY_BARCODE.equals(getIntent().getAction())) {
        //do something
}

// todo need to clear getIntent().getAction() here.
Run Code Online (Sandbox Code Playgroud)

android

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

标签 统计

android ×4

android-paging-3 ×1

kotlin ×1

kotlin-flow ×1