小编x10*_*ion的帖子

如何在从堆栈中丢弃登录屏幕时在活动之间向前导航?

我有一个应用程序,如果我在某个屏幕上,并且用户试图访问需要身份验证的应用程序的特定部分,它会在继续之前进入登录屏幕.

该应用程序当前所做的是,比如我在屏幕3上,但是想要进入屏幕4,但我需要先登录才能进入屏幕4.显示登录屏幕,登录后,用户被重定向到屏幕1必须返回步骤才能返回他们所在的屏幕.

我想要的是,当用户点击按钮进入屏幕4时,显示登录屏幕,并且一旦登录,用户就被发送到屏幕4,不再返回到屏幕3,然后再次点击该按钮.

我试过的是调用finish(); 一旦用户成功登录,但所有操作都是将用户返回到屏幕3,使他们必须点击按钮才能进入屏幕4,当然现在允许他们登录屏幕4.

有什么想法我可以在我的应用程序中实现这一点?

谢谢

编辑:标题可能会误导,我想不出更好的方式来改写标题.如果可以请继续请求编辑

android activity-stack android-activity

2
推荐指数
1
解决办法
78
查看次数

如何在过滤后查明ListView的ArrayAdapter是否为空

有没有办法检查过滤的列表视图是否为空?

我想TextView说没有结果,如果它是空的?

我有一个列表,说我想根据搜索过滤15项,并且让我们说过滤器后我留下5,我想返回5.如果结果为空则返回0.每次我调用适配器.getCount()它经过过滤后总是返回15

编辑:这是我为测试而尝试的代码,但它总是进入Else声明.

代码示例:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_search_results);

    Intent intent = getIntent();
    String searchPhrase = intent.getExtras().getString("search");
    Log.i(TAG, "Search phrase is" + searchPhrase);
    mListView = (ListView) findViewById(R.id.searchResultsListView);

    String[] listOfText = {"Row 1", "Row 2", "Row 3", "Row 4", "Row 5", "Row 6", "Row 7", "Row 8", "Row 9", "Row 10", "Row 11", "Row 12", "Row 13", "Row 14", "Row 15"};

    ArrayList<String> rowList = new ArrayList<>();
    rowList.addAll(Arrays.asList(listOfText));

    mArrayAdapter = new ArrayAdapter<>(this, R.layout.search_results_row_list, rowList);

    String searchQuery = searchPhrase.trim();
    if …
Run Code Online (Sandbox Code Playgroud)

java android

1
推荐指数
1
解决办法
1977
查看次数

Android Studio中的ArrayIndexOutOfBoundsException(不是代码 - 应用程序)

我在Android Studio中收到错误:

堆栈跟踪:

java.lang.ArrayIndexOutOfBoundsException: 82277
at org.jetbrains.org.objectweb.asm.ClassReader.readInt(ClassReader.java:2350)
at org.jetbrains.org.objectweb.asm.ClassReader.getAttributes(ClassReader.java:2201)
at org.jetbrains.org.objectweb.asm.ClassReader.accept(ClassReader.java:565)
at org.jetbrains.org.objectweb.asm.ClassReader.accept(ClassReader.java:506)
at com.android.tools.idea.rendering.ClassConverter.rewriteClass(ClassConverter.java:184)
at com.android.tools.idea.rendering.ClassConverter.rewriteClass(ClassConverter.java:77)
at com.android.tools.idea.rendering.RenderClassLoader.convertClass(RenderClassLoader.java:151)
at com.android.tools.idea.rendering.RenderClassLoader.loadClass(RenderClassLoader.java:135)
at com.android.tools.idea.rendering.RenderClassLoader.loadClassFile(RenderClassLoader.java:116)
at org.jetbrains.android.uipreview.ModuleClassLoader.loadClassFile(ModuleClassLoader.java:341)
at org.jetbrains.android.uipreview.ModuleClassLoader.loadClassFromModule(ModuleClassLoader.java:245)
at org.jetbrains.android.uipreview.ModuleClassLoader.loadClassFromModuleOrDependency(ModuleClassLoader.java:206)
at org.jetbrains.android.uipreview.ModuleClassLoader.load(ModuleClassLoader.java:150)
at com.android.tools.idea.rendering.RenderClassLoader.findClass(RenderClassLoader.java:54)
at org.jetbrains.android.uipreview.ModuleClassLoader.findClass(ModuleClassLoader.java:90)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.jetbrains.android.uipreview.ModuleClassLoader.loadClass(ModuleClassLoader.java:193)
at java.lang.Class.getDeclaredClasses0(Native Method)
at java.lang.Class.getDeclaredClasses(Class.java:1867)
at org.jetbrains.android.uipreview.ViewLoader.parseClass(ViewLoader.java:562)
at org.jetbrains.android.uipreview.ViewLoader.loadAndParseRClass(ViewLoader.java:546)
at org.jetbrains.android.uipreview.ViewLoader.loadAndParseRClassSilently(ViewLoader.java:502)
at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadAndParseRClass(LayoutlibCallbackImpl.java:676)
at com.android.tools.idea.rendering.RenderTask.<init>(RenderTask.java:164)
at com.android.tools.idea.rendering.RenderService.createTask(RenderService.java:236)
at com.android.tools.idea.uibuilder.model.NlModel.inflate(NlModel.java:345)
at com.android.tools.idea.uibuilder.model.NlModel.updateModel(NlModel.java:406)
at com.android.tools.idea.uibuilder.model.NlModel$2.run(NlModel.java:259)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:333)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:323)
at com.intellij.util.ui.update.MergingUpdateQueue$3.run(MergingUpdateQueue.java:267)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:282)
at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:234)
at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
at com.intellij.util.Alarm$Request$1.run(Alarm.java:378)
at com.intellij.util.Alarm$Request.run(Alarm.java:389) …
Run Code Online (Sandbox Code Playgroud)

android

1
推荐指数
1
解决办法
3405
查看次数

使用Concatenation构建代码?

有没有办法在Android studio/eclipse中使用Concatenation创建代码构建代码?

换句话说,我有2套字符串,每个国家我正在处理ZA和KE.他们有2个不同的EULA.

所以我想拉出与各自国家相关的字符串.

String message = mContext.getString(R.string.eula_string_za);
Run Code Online (Sandbox Code Playgroud)

上面是输出代码的示例.在某种程度上,我可以根据If语句进行"创建"吗?

String str = "mContext.getString(R.string.eula_string_";
if (something = "ZA") {
    str += "za);";
} else {
    str += "ke);";
}
Run Code Online (Sandbox Code Playgroud)

所以如果选择的国家是ZA,那么输出代码应该是

mContext.getString(R.string.eula_string_za);
Run Code Online (Sandbox Code Playgroud)

如果它的KE应该是

mContext.getString(R.string.eula_string_ke);
Run Code Online (Sandbox Code Playgroud)

然后结果将从strings.xml中提取正确的字符串?

java android

0
推荐指数
1
解决办法
55
查看次数

标签 统计

android ×4

java ×2

activity-stack ×1

android-activity ×1