如何将一个字符串链接到另一个Class?

时间:2018-12-30 16:40:57

标签: java android string

我有两个Java类。 “ Stickers.java”,它只是一个Java类。 “ KeyboardService”是活动类。

我在“ Stickers.java”中有一个字符串,需要通过两个按钮从活动Java类“ KeyboardService”中覆盖它。

我该怎么办?

我想通过单击按钮从“ Stickers.java”更改字符串“ PACK_LIB”。第一个按钮“ b1”将用“ allstickers”覆盖“ PACK_LIB”,另一个按钮“ b2”将用“ teststickers”覆盖。

但是如何告诉“ KeyboardService.java”字符串在哪里。因为它在不同的Java类中?

// Stickers.java

public void setDefaultStickerPack() {
    checkVersion(true);
    InputStream in = null;
    String packList[]=new String[0];
    String PACK_LIB = "";
    final String PACK_APP="pack_app";
    final String PACK_ICON="pack_on.png";
    String curAssets="";

// KeyboardService.java

    final String[] PACK_LIB = {""};

    final Button button1 = (Button) mainBoard.findViewById(R.id.b1);
    button1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            PACK_LIB[0] = "allstickers";
        }
    });
    final Button button2 = (Button) mainBoard.findViewById((R.id.b2));
    button2.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {

            PACK_LIB[0] = "teststickers";
        }
    });

我还尝试将Java类“ Stickers.java”导入“ KeyboardService”。但是它不能正常工作,它将无法从“ Stickers.java”中找到字符串“ Pack_LIB”。

1 个答案:

答案 0 :(得分:1)

PACK_LIB是setDefaultStickerPack()方法的局部变量。将您的代码更改为以下代码,您应该可以从另一个类中看到PACK_LIB。

public String PACK_LIB = "";
public void setDefaultStickerPack() {
    checkVersion(true);
    InputStream in = null;
    String packList[]=new String[0];
    final String PACK_APP="pack_app";
    final String PACK_ICON="pack_on.png";
    String curAssets="";