gpt4 book ai didi

java - 按下按钮使微调器在另一个屏幕上可见

转载 作者:行者123 更新时间:2023-11-30 11:53:24 25 4
gpt4 key购买 nike

我正在尝试在屏幕 1 上编写一个 onClickevent 按钮,使结果是在屏幕 2 上显示或不可见的微调器,具体取决于需要。

知道在屏幕 1 上有几个使用相同 View 的按钮或第二个屏幕上的小部件,我正在考虑将一个屏幕用于所有这些 Activity 。

如果有人知道并向我解释如何解决这个问题,那就太好了。

我会附上java代码只是为了看看它。

public class screen1 extends Activity {

private View spinner1;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.screen1);

spinner1 = findViewById(R.id.spinner1);
Button A = (Button) findViewById(R.id.b_A);

// error output: Cannot instantiate the type View.OnClickListener
A.setOnClickListener(new View.OnClickListener());
A.setOnClickListener(mVisibleListener);
}

@Override
// error output behind the line 'public void':The method onClick(View) of type screen1 must override or implement a supertype method

public void onClick(View arg0) {
// TODO Auto-generated method stub
startActivity(new Intent("com.jack.test.SCREENMENU"));

}
OnClickListener mVisibleListener = new OnClickListener(){
public void onClick(View v){
spinner1.setVisibility(View.VISIBLE);{
};
// the rest is ok from here to down.

最佳答案

除了您要问的问题之外,您的代码似乎还存在一些重大问题。幸运的是,如果我理解正确,你想要的东西很容易修复:

@Override
public void onClick(DialogInterface dialog, int which)
{
if (need_is_met)
{
if (spinner1.getVisibility() == View.INVISIBLE)
view.setVisibility(View.VISIBLE);
else
view.setVisibility(View.INVISIBLE);
}
}

need_is_met 是一个 boolean 值……就您的声明“取决于需求”而言,这就是我所能得到的

就您的其余代码而言,它应该如下所示:

public class screen1 extends Activity
{

private View spinner1;

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.screen1);
boolean need_is_met = true; // you can change this or have it set based on something later if you want
spinnerAutomerk = findViewById(R.id.spinnerAutomerk);
button_A = (Button) findViewById(R.id.b_A);

button_A.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
if (need_is_met)
{
if (spinnerAutomerk.getVisibility() == View.INVISIBLE)
spinnerAutomerk.setVisibility(View.VISIBLE);
else
spinnerAutomerk.setVisibility(View.INVISIBLE);
}
}
}
}
}

类似的东西。我取出了所有的 requestWindowFeaturewindowFlag 等,因为将它放入您的 list 中会更整洁:

...
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
>
<activity
android:name=".Screen1"
android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
...

最后一行,主题位,将为您设置多个主题中的任何一个(例如深色,浅色,透明等。只需转到 R.style 并按 ctrl-F 即可 theme 你会看到有一个数字可供选择。类似于 this 如果你愿意,他们可以取消标题和通知栏。我也没有将 net_is_met 设置为某些东西,因为我不知道你的代码的其余部分是关于什么的。

关于java - 按下按钮使微调器在另一个屏幕上可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6287255/

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