1

如何调用我使用 Chaquopy 编写的函数?

我使用了文档中的示例,效果很好。我可以使用 Python 将文本放在标签上。然后我创建了一个按钮并想调用我的函数(例如,my_func):

from demo.chaquopy.pythonactivity import R

from java import static_proxy, Override, jvoid

from android.os import Bundle

from android.support.v7.app import AppCompatActivity


class MainActivity(static_proxy(AppCompatActivity)):

    @Override(jvoid, [Bundle])
    def onCreate(self, state):
        AppCompatActivity.onCreate(self, state)
        self.setContentView(R.layout.activity_main)
        self.findViewById(R.id.label).setText("Hello From Python!")

    def my_func(self):
        self.findViewById(R.id.label).setText("Another text")

我尝试像使用 Java 函数一样编写“android:onclick”,但它不起作用。而且我在示例和文档中找不到它。请问有人可以帮忙吗?提前非常感谢。

4

1 回答 1

0

要在 XML 中声明一个侦听器,该方法必须在 Java 中是可见的。您可以像这样使其可见:

from java import method
from android.view import View

class MainActivity(...):

    @method(jvoid, [View])
    def my_func(self):
        ...
于 2019-01-02T22:48:49.803 回答