在Android的不同Kotlin示例中,我看到toast("Some message ...")或toastLong("Some long message").例如:
view.setOnClickListener { toast("Click") }
Run Code Online (Sandbox Code Playgroud)
据我所知,它是一个活动的扩展功能.
如何定义这个toast()函数以及在哪里(在什么地方)能够通过项目使用它?
例:
这有效
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
<head lang="en">
<meta charset="UTF-8"/>
<title></title>
</head>
<body>
<button th:onclick="'javascript:sayHello(\'hello\')'">Say Hello</button>
</body>
<script>
function sayHello(text) {
alert(text);
}
</script>
</html>
Run Code Online (Sandbox Code Playgroud)
但是,如果我将js移动到同一文件夹中的文件hello.js,则脚本无效.
我尝试嵌入这样的:
<script type="text/javascript" th:src="@{hello.js}"></script>
Run Code Online (Sandbox Code Playgroud)
像这样:
<script type="text/javascript" src="hello.js"></script>
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
当我在顶部添加一些项目时,ListView它会滚动到0索引上的顶部项目。但是我需要它保持与添加项目之前相同的位置。
例如,消息列表顶部的聊天历史分页,如果我打开任何信使(电报、WhatsApp 等),打开历史悠久的聊天并向下滚动下载历史。历史记录将添加到列表的顶部(一次来自服务器约 20 条消息),但列表将保持在相同位置(滚动时)。
ListView如果你添加到底部,Flutter 的行为就像这样,但如果你添加到顶部,它会跳转到第一个添加的项目。我想让它留下来。
使用Espresso更新EditText很容易,但是在测试过程中我找不到改变文本的方法(比如使用TextView.setText("someText");方法).
ViewAction.replaceText(stringToBeSet);
Run Code Online (Sandbox Code Playgroud)
不工作,因为它应该是一个EditText;