繁体   English   中英

Android物理后退按钮错误

[英]Android physical back button error

当我点击physical Android Button ,出现下一个错误:

未处理的异常java.lang.IndexOutOfBoundsException:setSpan(2..2)结束于长度0

这是我的app.routing.ts

import { LoginComponent } from "./pages/login/login.component";
import { CarwashComponent } from "./pages/carwash/carwash.component";
import { NewOrderComponent } from "./pages/new_order/new-order.component";
import { ProfileComponent } from "./pages/profile/profile.component";
import { OrderDetailComponent } from "./pages/order/order-detail/order-detail.component";

export const routes = [
  { path: "", component: LoginComponent },
  { path: "profile", component: ProfileComponent},
  { path: "carwash", component: CarwashComponent },
  { path: "order-detail/:order_id", component: OrderDetailComponent },
  { path: "new_order", component: NewOrderComponent}
];

export const navigatableComponents = [
  LoginComponent,
  CarwashComponent,
  ProfileComponent,
  OrderDetailComponent,
  NewOrderComponent
];

页面示例:

import { Component, ElementRef, OnInit, ViewChild, OnChanges } from "@angular/core";
import { CarwashService } from "../../../shared/carwash/carwash.service";
import { OrderService } from "../../../shared/order/order.service";
import { Page } from "ui/page";
import { Color } from "color";
import { Router, ActivatedRoute, Params } from "@angular/router";
import { TimePicker } from "ui/time-picker";
import { DatePicker } from "ui/date-picker";
import { StoredData } from "../../../shared/config"
import * as application from "application";

@Component({
    selector: "order-detail",
    providers: [CarwashService, OrderService],
    templateUrl: "pages/order/order-detail/order-detail.html",
    styleUrls: ["pages/order/order-detail/order-detail-common.css", "pages/order/order-detail/order-detail.css"]
})    

export class OrderDetailComponent implements OnInit {
    constructor(
        private page: Page,
        private router: Router,
        private carwashService: CarwashService,
        private orderService: OrderService,
        private route: ActivatedRoute){}

    ngOnInit() {... }    
    checkStatus(){...}    
    addOrderTotalName(){...}    

    changeStatus(status){...}    
    closeOrder(){...}    
    cancelOrder(){...}
}

怎么了? 在此处输入图片说明

通常,物理后退按钮的行为就像返回上一页一样,但是我不知道为什么会发生这种情况。 您可以尝试再次定义后退按钮的功能,如下所示:

var application = require("application")
var topmost = require("ui/frame").topmost;

var activity = application.android.startActivity ||
        application.android.foregroundActivity ||
        frameModule.topmost().android.currentActivity ||
        frameModule.topmost().android.activity;
var lastPress;

activity.onBackPressed = function() {
   topmost().goBack;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM