小编Bar*_*tos的帖子

Android - 使用 Compose 创建 Spinner

是否可以使用 Compose 框架创建 Spinner?因为我正在尝试,但看起来没有像创建 Button 这样的 compose 方法:

Button(onClick = {},
                            modifier = Modifier
                                .align(Alignment.CenterHorizontally)
                                .fillMaxWidth()

                        )
                        {
                            Text(text = "Next")
                        }
Run Code Online (Sandbox Code Playgroud)

任何建议如何创建 Spinner ?我需要使用 xml 吗?

android android-jetpack android-jetpack-compose

4
推荐指数
2
解决办法
1823
查看次数

如何在 Compose Navigation 中导航视图模型字段更改?

在我的应用程序中,我想将信息发送到服务器,在收到成功响应后,我想将信息传递到当前屏幕以导航到另一个屏幕。

这是流程:

我从 UI 调用viewModel将请求发送到服务器。在ViewModel我有一个回调:

@HiltViewModel
class CreateAccountViewModel @Inject constructor(
    private val cs: CS
) : ViewModel() {

    private val _screen = mutableStateOf("")

    val screen: State<String> = _screen

    fun setScreen(screen: Screen) {
        _screen.value = screen.route
    }

    private val signUpCallback = object : SignUpHandler {
        override fun onSuccess(user: User?, signUpResult: SignUpResult?) {
            setScreen(Screen.VerifyAccountScreen)
            Log.i(Constants.TAG, "sign up success")

        }

        override fun onFailure(exception: Exception?) {
            Log.i(Constants.TAG, "sign up failure ")
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我还State负责 Screen,因此当响应成功时,我想更新状态,以便 UI 层(Screen)知道它应该导航到另一个屏幕。我的问题是:我如何观察状态 …

android kotlin android-viewmodel android-jetpack-compose

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

使用标题调用Volley请求时出现UnsupportedOperationException

我尝试用Volley库发出呼叫请求.我想设置标题,但我得到java.lang.UnsupportedOperationException.你知道为什么,我该如何解决这个问题?

 public void getAccountInfo() {
            RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
            String url = "http://demo.gopos.pl/oauth/token";
            StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
                    new Response.Listener<String>() {
                        @Override
                        public void onResponse(String response) {
                            // Display the first 500 characters of the response string.
                            Log.e(TAG, "onResponse SUCCES!!" + response);

                    }
                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                Log.e(TAG, "That didn't work!");
            }

        }) {
            @Override
            public Map<String,String> getHeaders()throws AuthFailureError {
                Map<String,String> params = super.getHeaders();
                if(params==null)params = new HashMap<>();
                params.put("username","username");
                params.put("password","password");
                return params;
            } …
Run Code Online (Sandbox Code Playgroud)

android android-volley

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

ORMLite如果存在查询

我需要一些ORMLite的帮助.我有ListView与从API下载的对象.在每个项目上我都有ToggleButton.点击后,TB项目被添加到我的数据库中,TB stata被检查为"clicked".这一切都发生在我的主要片段中,但是当我切换片段并再次回到主片段时,TB又被设置为"未点击".所以,我需要做的是检查何时创建主片段如果listView中的对象存在于数据库中,如果是这样,请检查ToggleButton状态是否被点击(我认为这将是一个正确的选项)但我不知道如何写查询:/

这是我的适配器代码,它将项目添加到DB:

@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
   if(isChecked) {
       try {
           final Dao<Concert, Integer> concertDao = getHelper().getConcertDao();
           concertDao.create(concertList.get(position));
        } catch (SQLException e) {
           e.printStackTrace();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

java query-builder ormlite

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

Kotlin,即使条件为 false,代码也会进入 if 语句

我在这里真的很困惑......看起来像一个非常愚蠢的错误,但我不知道发生了什么。这是我的代码的一小段:

if (tempDeltaDeviation > standardDeltaDeviation) {
                        Log.e(TAG, "handleMessage: plus $tempDeltaDeviation : $standardDeltaDeviation")
                        scaleUpAnimation(deltaAnimStep, "Delta", binding.deltaImg)
}
Run Code Online (Sandbox Code Playgroud)

非常基本的东西,对吧?检查日志我可以看到:

handleMessage: plus 1.57756888292539E14 : 7.8364593205657E13
Run Code Online (Sandbox Code Playgroud)

不知道,但上次我检查 1 比 7 小得多,所以为什么应用程序输入 if 语句?

android if-statement kotlin

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