gpt4 book ai didi

java - 使用项目作为库,但需要更改 contentView

转载 作者:行者123 更新时间:2023-12-01 14:12:30 25 4
gpt4 key购买 nike

我有一个android项目作为库,这个库包含一个主屏幕。新应用程序需要这个主屏幕(以及库中的其他所有内容),但还需要对所有图形进行更改,并添加一些新按钮,我该怎么做?

我不想编辑库。我可以让新应用程序具有与库同名的图像,这样新图像就会取代库图像。但这并不能帮助我向布局添加 3 个新按钮,以及向 Activity 添加新功能(同时保留所有旧功能)。

有人有过类似的经历吗?

最佳答案

从库中扩展主屏幕 Activity 。覆盖onCreate(Bundle):

public class NewMainActivity extends HomeScreenActivityFromLibrary {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

View viewFromLibrary = getLayoutInflater().inflate(
library.package.name.R.layout.home_screen, null);

// Make changes; add Buttons to `viewFromLibrary`
// Add functionality to Buttons; setOnClickListeners

setContentView(viewFromLibrary);
}
}

根据您的 HomeScreenActivityFromLibrary 设置方式,您可能需要重写其他方法。您可以做的另一件事是:只需将 HomeScreenActivityFromLibrary 中使用的布局文件复制到项目的 res/layout 文件夹中。在 xml 文件中添加其他小部件(按钮等)。在这种情况下,您需要做的就是:

public class NewMainActivity extends HomeScreenActivityFromLibrary {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.newly_created_xml_file);

Button b1 = (Button) findViewById(R.id.b1_id);
....
....
}
}

关于java - 使用项目作为库,但需要更改 contentView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18387082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com