问题是我的应用程序在第二个 activity 中启动
Problem my app starts in the second activity
我总结...
以前我一直在寻求帮助来解决我的辅助 activity 没有处理 Onclick 的问题,在收到帮助后我又遇到了另一个错误!
事实证明,现在我的应用程序启动了,但在第二个 activity
它不会让我离开应用程序或处理它
我不知道错误是什么
事实:这当然很简单,我评论说我是 android 编程的新手 :)!
图片:
上一代码:https://i.stack.imgur.com/huZLu.png 错误代码
以前的所有代码:https://i.stack.imgur.com/hCJYJ.png
解决方案后的代码,即我的新错误(我的应用程序在模拟器中以第二个 activity 而不是第一个启动)
图片:
[1]: https://i.stack.imgur.com/4cwzc.png 提供的解决方案和可能出现的问题
if (mPaginaActiva.IsFinal()) {
mOpcion1.setVisibility(View.INVISIBLE);
mOpcion2.setText("INTENTARLO DE NUEVO");
mOpcion2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
[2]: https://i.stack.imgur.com/j1D2i.png 所有代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_secundario);
Intent intent = getIntent();
mNombre = intent.getStringExtra("Nombre");
mImageView = (ImageView)findViewById(R.id.ContenidoImageView);
mTextView = (TextView)findViewById(R.id.ContenidoTextView);
mOpcion1 = (Button)findViewById(R.id.opcionButton1);
mOpcion2 = (Button) findViewById(R.id.opcionButton2);
loadpage(0);
}
private void loadpage(int i) {
mPaginaActiva = mContenidos.getPage(i);
Drawable drawable = getResources().getDrawable(mPaginaActiva.getImageId());
mImageView.setImageDrawable(drawable);
String pageText = mPaginaActiva.getText();
pageText = String.format(pageText, mNombre);
mTextView.setText(pageText);
if (mPaginaActiva.IsFinal()) {
mOpcion1.setVisibility(View.INVISIBLE);
mOpcion2.setText("INTENTARLO DE NUEVO");
mOpcion2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
} else {
mOpcion1.setText(mPaginaActiva.getOpcion1().getText());
mOpcion2.setText(mPaginaActiva.getOpcion2().getText());
mOpcion1.setOnClickListener( (v) -> {
int nextPage = mPaginaActiva.getOpcion1().getNextPage();
loadpage(nextPage);
}) ;
mOpcion2.setOnClickListener((v) -> {
int nextPage = mPaginaActiva.getOpcion2().getNextPage();
loadpage(nextPage);
});
}
}}
希望能解决这个问题!
另一个解决方案给了我方法,但它给了我这个问题,我的应用程序在第二个 activity.java 中保持检查状态,而不是在第一个中,因为它应该启动 :(
抱歉,如果它完全简单:)!
主要代码Activity 1(应用程序应启动的 activity (Activity 1))
public class MainActivity extends AppCompatActivity {
private EditText mCampoNombre;
private Button mBotonInicio;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mCampoNombre = findViewById(R.id.NombreEditText);
mBotonInicio = findViewById(R.id.InicioButton);
mBotonInicio.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String nombre = mCampoNombre.getText().toString();
startStory(nombre);
}
});
}
private void startStory(String nombre) {
Intent intent = new Intent(this, SecundarioActivity.class);
intent.putExtra("Nombre", nombre);
startActivity(intent);
}
}
假设您有 2 个 activity; 登录 activity 和 main activity。如果您希望您的应用程序在 登录 activity 时启动,请转到您的 AndroidManifest.xml 并在下面添加这些代码行右边 activity:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
所以它应该是这样的:
<activity
android:name=".LoginActivity"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:windowSoftInputMode="adjustResize"/>
我总结... 以前我一直在寻求帮助来解决我的辅助 activity 没有处理 Onclick 的问题,在收到帮助后我又遇到了另一个错误! 事实证明,现在我的应用程序启动了,但在第二个 activity 它不会让我离开应用程序或处理它 我不知道错误是什么 事实:这当然很简单,我评论说我是 android 编程的新手 :)! 图片: 上一代码:https://i.stack.imgur.com/huZLu.png 错误代码 以前的所有代码:https://i.stack.imgur.com/hCJYJ.png
解决方案后的代码,即我的新错误(我的应用程序在模拟器中以第二个 activity 而不是第一个启动)
图片: [1]: https://i.stack.imgur.com/4cwzc.png 提供的解决方案和可能出现的问题
if (mPaginaActiva.IsFinal()) {
mOpcion1.setVisibility(View.INVISIBLE);
mOpcion2.setText("INTENTARLO DE NUEVO");
mOpcion2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
[2]: https://i.stack.imgur.com/j1D2i.png 所有代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_secundario);
Intent intent = getIntent();
mNombre = intent.getStringExtra("Nombre");
mImageView = (ImageView)findViewById(R.id.ContenidoImageView);
mTextView = (TextView)findViewById(R.id.ContenidoTextView);
mOpcion1 = (Button)findViewById(R.id.opcionButton1);
mOpcion2 = (Button) findViewById(R.id.opcionButton2);
loadpage(0);
}
private void loadpage(int i) {
mPaginaActiva = mContenidos.getPage(i);
Drawable drawable = getResources().getDrawable(mPaginaActiva.getImageId());
mImageView.setImageDrawable(drawable);
String pageText = mPaginaActiva.getText();
pageText = String.format(pageText, mNombre);
mTextView.setText(pageText);
if (mPaginaActiva.IsFinal()) {
mOpcion1.setVisibility(View.INVISIBLE);
mOpcion2.setText("INTENTARLO DE NUEVO");
mOpcion2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
} else {
mOpcion1.setText(mPaginaActiva.getOpcion1().getText());
mOpcion2.setText(mPaginaActiva.getOpcion2().getText());
mOpcion1.setOnClickListener( (v) -> {
int nextPage = mPaginaActiva.getOpcion1().getNextPage();
loadpage(nextPage);
}) ;
mOpcion2.setOnClickListener((v) -> {
int nextPage = mPaginaActiva.getOpcion2().getNextPage();
loadpage(nextPage);
});
}
}}
希望能解决这个问题! 另一个解决方案给了我方法,但它给了我这个问题,我的应用程序在第二个 activity.java 中保持检查状态,而不是在第一个中,因为它应该启动 :( 抱歉,如果它完全简单:)!
主要代码Activity 1(应用程序应启动的 activity (Activity 1))
public class MainActivity extends AppCompatActivity {
private EditText mCampoNombre;
private Button mBotonInicio;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mCampoNombre = findViewById(R.id.NombreEditText);
mBotonInicio = findViewById(R.id.InicioButton);
mBotonInicio.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String nombre = mCampoNombre.getText().toString();
startStory(nombre);
}
});
}
private void startStory(String nombre) {
Intent intent = new Intent(this, SecundarioActivity.class);
intent.putExtra("Nombre", nombre);
startActivity(intent);
}
}
假设您有 2 个 activity; 登录 activity 和 main activity。如果您希望您的应用程序在 登录 activity 时启动,请转到您的 AndroidManifest.xml 并在下面添加这些代码行右边 activity:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
所以它应该是这样的:
<activity
android:name=".LoginActivity"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:windowSoftInputMode="adjustResize"/>