Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用意图切换视图后不保存信息(android)_Java_Android_Android Layout_Android Fragments_Android Intent - Fatal编程技术网

Java 使用意图切换视图后不保存信息(android)

Java 使用意图切换视图后不保存信息(android),java,android,android-layout,android-fragments,android-intent,Java,Android,Android Layout,Android Fragments,Android Intent,我在我简单的2视图篮球记分应用程序中使用意图切换视图。第一页和主页是保存分数的页面,第二页是保存5人阵容(5个编辑文本)的页面。一切都正常,但切换视图后,分数和阵容不会保留其信息。例如,分数设置为7-0,用户转到“阵容”页面并使用球员姓名进行更新,然后用户返回“分数保持”页面,分数将为0-0。我知道片段可能会解决这个问题,但我不知道如何应用片段(尽管我已经阅读了好几次文档),因此可以给我的最好帮助是我需要更改的具体示例。我的代码贴在下面,非常感谢您的帮助 //////////MainActivi

我在我简单的2视图篮球记分应用程序中使用意图切换视图。第一页和主页是保存分数的页面,第二页是保存5人阵容(5个编辑文本)的页面。一切都正常,但切换视图后,分数和阵容不会保留其信息。例如,分数设置为7-0,用户转到“阵容”页面并使用球员姓名进行更新,然后用户返回“分数保持”页面,分数将为0-0。我知道片段可能会解决这个问题,但我不知道如何应用片段(尽管我已经阅读了好几次文档),因此可以给我的最好帮助是我需要更改的具体示例。我的代码贴在下面,非常感谢您的帮助

//////////MainActivity.java (score keeping view)//////

package com.example.ryan.basketballscorekeeper;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import android.content.Intent;

public class MainActivity extends AppCompatActivity {

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

        setContentView(R.layout.activity_main);

    Button lineupButton= (Button) findViewById(R.id.lineup_button);

        lineupButton.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this,       Main2Activity.class);
                startActivity(intent);
            }

        });
    TextView textView = (TextView) findViewById(R.id.homeTeamScore);
    textView.setText(homeScore+"");
    TextView textView2 = (TextView) findViewById(R.id.awayTeamScore);
    textView.setText(awayScore+"");



}


int homeScore=0; //home team score
int awayScore=0; //away team score
String awayScoreString=awayScore+"";
String homeScoreString=homeScore+"";



public void onSaveInstanceState(Bundle savedInstanceState) {
    super.onSaveInstanceState(savedInstanceState);
}

public void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onSaveInstanceState(savedInstanceState);
}

public void onStart(Bundle savedInstanceState){
    setContentView(R.layout.activity_main);
    onRestoreInstanceState(savedInstanceState);
}

public void onPause (Bundle savedInstanceState){
    onSaveInstanceState(savedInstanceState);
}
public void onDestroy (Bundle savedInstanceState){
    onSaveInstanceState(savedInstanceState);
}

public void lineupsView(View view){
    Intent intent = new Intent(this, Main2Activity.class);
    setContentView(R.layout.lineups);

}

public void mainView(View view){
    setContentView(R.layout.activity_main);
}

  ///////////////beginning of score-updating code////////////////

public void updateStrings(){
    homeScoreString=homeScore+"";
    awayScoreString=awayScore+"";
}

public void threePointerAway(View view){
    TextView textView = (TextView) findViewById(R.id.awayTeamScore);
    awayScore+=3;
    updateStrings();
    textView.setText(awayScoreString);
}
public void threePointerHome(View view){
    TextView textView = (TextView) findViewById(R.id.homeTeamScore);
    homeScore+=3;
    updateStrings();
    textView.setText(homeScoreString);
}
public void twoPointerHome(View view){
    TextView textView = (TextView) findViewById(R.id.homeTeamScore);
    homeScore+=2;
    updateStrings();
    textView.setText(homeScoreString);
}
public void twoPointerAway(View view){
    TextView textView = (TextView) findViewById(R.id.awayTeamScore);
    awayScore+=2;
    updateStrings();
    textView.setText(awayScoreString);
}
public void freeThrowHome(View view){
    TextView textView = (TextView) findViewById(R.id.homeTeamScore);
    homeScore+=1;
    updateStrings();
    textView.setText(homeScoreString);
}
public void freeThrowAway(View view){
    TextView textView = (TextView) findViewById(R.id.awayTeamScore);
    awayScore+=1;
    updateStrings();
    textView.setText(awayScoreString);
}

public void reset(View view){
    TextView awayView = (TextView) findViewById(R.id.awayTeamScore);
    TextView homeView = (TextView) findViewById(R.id.homeTeamScore);
    homeScore=0;
    awayScore=0;
    updateStrings();
    awayView.setText(awayScoreString);
    homeView.setText(homeScoreString);
}


}
 ///////activity_main.xml (score keeping xml file)//////

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout       xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.ryan.basketballscorekeeper.MainActivity"
//MainActivity.java(记分视图)//////
package com.example.ryan.basketballscorekeeper;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.Button;
导入android.widget.EditText;
导入android.widget.TextView;
导入android.support.v4.app.Fragment;
导入android.view.LayoutInflater;
导入android.view.ViewGroup;
导入android.content.Intent;
公共类MainActivity扩展了AppCompatActivity{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
按钮lineupButton=(按钮)findViewById(R.id.lineup_按钮);
lineupButton.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
意向意向=新意向(MainActivity.this、Main2Activity.class);
星触觉(意向);
}
});
TextView TextView=(TextView)findViewById(R.id.homeTeamScore);
textView.setText(homeScore+“”);
TextView textView2=(TextView)findViewById(R.id.awayTeamScore);
textView.setText(awayScore+“”);
}
int homeScore=0;//主队得分
int awayScore=0;//客场球队得分
字符串awayScoreString=awayScore+“”;
字符串homeScoreString=homeScore+“”;
SaveInstanceState上的公共无效(Bundle savedInstanceState){
super.onSaveInstanceState(savedInstanceState);
}
RestoreInstanceState上的公共无效(Bundle savedInstanceState){
super.onSaveInstanceState(savedInstanceState);
}
启动时的公共void(Bundle savedInstanceState){
setContentView(R.layout.activity_main);
onRestoreInstanceState(savedInstanceState);
}
暂停时的公共无效(Bundle savedInstanceState){
onSaveInstanceState(savedInstanceState);
}
公用空onDestroy(Bundle savedInstanceState){
onSaveInstanceState(savedInstanceState);
}
公共空心线形视图(视图){
意向意向=新意向(此,Main2Activity.class);
setContentView(R.layout.lineups);
}
公共void主视图(视图){
setContentView(R.layout.activity_main);
}
///////////////分数更新代码的开始////////////////
公共void updateStrings(){
homeScoreString=homeScore+“”;
awayScoreString=awayScore+“”;
}
公共无效三点通道(视图){
TextView TextView=(TextView)findViewById(R.id.awayTeamScore);
awayScore+=3;
updateStrings();
setText(awayScoreString);
}
公共void三点式家庭(视图){
TextView TextView=(TextView)findViewById(R.id.homeTeamScore);
homeScore+=3;
updateStrings();
setText(HomeCoreString);
}
公共void两点式家庭(视图){
TextView TextView=(TextView)findViewById(R.id.homeTeamScore);
homeScore+=2;
updateStrings();
setText(HomeCoreString);
}
公共无效两点通道(视图){
TextView TextView=(TextView)findViewById(R.id.awayTeamScore);
awayScore+=2;
updateStrings();
setText(awayScoreString);
}
公共void freethrohome(视图){
TextView TextView=(TextView)findViewById(R.id.homeTeamScore);
homeScore+=1;
updateStrings();
setText(HomeCoreString);
}
公共空间自由一次性通道(视图){
TextView TextView=(TextView)findViewById(R.id.awayTeamScore);
awayScore+=1;
updateStrings();
setText(awayScoreString);
}
公共无效重置(视图){
TextView awayView=(TextView)findViewById(R.id.awayTeamScore);
TextView homeView=(TextView)findViewById(R.id.homeTeamScore);
homeScore=0;
awayScore=0;
updateStrings();
awayView.setText(awayScoreString);
homeView.setText(HomeCoreString);
}
}
///////activity_main.xml(记分xml文件)//////


///////Main2Activity.java(列表视图)//////
package com.example.ryan.basketballscorekeeper;
导入android.content.Intent;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.Button;
导入android.widget.EditText;
公共类Main2活动扩展了AppCompative活动{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
按钮mainButton=(按钮)findviewbyd(R.id.main_按钮);
mainButton.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
意向意向=新意向(Main2Activity.this、MainActivity.class);
星触觉(意向);
}
});
EditText editText1=(EditText)findViewById(R.id.one);
one=editText1.getText().toString();
EditText editText2=(EditText)findViewById(R.id.two);
two=editText1.getText().toString();
EditText editText3=(EditText)findViewById(R.id.three);
三=editText1.getText().toString();
EditText editText4=(EditText)findViewById(R.id.four);
四=编辑文本
<ImageView
    android:layout_width="match_parent"
   android:layout_height="match_parent"
    android:src="@drawable/bballcourt"
    android:scaleType="centerCrop"
    />


<LinearLayout

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    >
    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:layout_gravity="center"
        android:orientation="vertical"
        >

        <TextView
            android:textColor="#ffffff"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Home Team"
            android:layout_margin="10dp"
            android:layout_gravity="center"
            android:textSize="15dp"
            />
        <TextView
            android:textColor="#ffffff"
            android:id="@+id/homeTeamScore"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="0"
            android:textSize="50dp"
            android:layout_gravity="center"
            />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="+3 Points"
            android:background="#ffbf80"
            android:layout_gravity="center"
            android:onClick="threePointerHome"
            android:layout_marginTop="20dp"
            android:textSize="20dp"
            android:padding="10dp"
            />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="+2 Points"
            android:background="#ffbf80"
            android:layout_gravity="center"
            android:onClick="twoPointerHome"
            android:layout_marginTop="20dp"
            android:textSize="20dp"
            android:padding="10dp"
            />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Free Throw"
            android:background="#ffbf80"
            android:layout_gravity="center"
            android:onClick="freeThrowHome"
            android:layout_marginTop="20dp"
            android:textSize="17dp"
            android:padding="10dp"
            />
    </LinearLayout>

    <View
        android:layout_width="5dp"
        android:layout_height="340dp"
        android:background="#d9d9d9"
        android:layout_marginTop="40dp"

        />

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:layout_gravity="center"
        android:orientation="vertical"
        >

        <TextView
            android:textColor="#ffffff"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Away Team"
            android:layout_margin="10dp"
            android:layout_gravity="center"
            android:textSize="15dp"
            />
        <TextView
            android:textColor="#ffffff"
            android:id="@+id/awayTeamScore"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="0"
            android:textSize="50dp"
            android:layout_gravity="center"
            />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="+3 Points"
            android:background="#ffbf80"
            android:layout_gravity="center"
            android:onClick="threePointerAway"
            android:layout_marginTop="20dp"
            android:textSize="20dp"
            android:padding="10dp"
            />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="+2 Points"
            android:background="#ffbf80"
            android:layout_gravity="center"
            android:onClick="twoPointerAway"
            android:layout_marginTop="20dp"
            android:textSize="20dp"
            android:padding="10dp"
            />
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Free Throw"
            android:background="#ffbf80"
            android:layout_gravity="center"
            android:onClick="freeThrowAway"
            android:layout_marginTop="20dp"
            android:textSize="17dp"
            android:padding="10dp"
            />
    </LinearLayout>

 </LinearLayout>

 <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="reset"
    android:textAllCaps="true"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    android:padding="15dp"
    android:layout_marginBottom="40dp"
    android:textSize="20dp"
    android:background="#ffbf80"
    android:onClick="reset"

    />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Lineups"
    android:textAllCaps="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    android:padding="15dp"
    android:layout_margin="10dp"
    android:textSize="20dp"
    android:background="#ff8000"
    android:id="@+id/lineup_button" />

</RelativeLayout>


///////Main2Activity.java (lineup view)//////


  package com.example.ryan.basketballscorekeeper;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class Main2Activity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main2);

    Button mainButton= (Button) findViewById(R.id.main_button);

    mainButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Main2Activity.this,    MainActivity.class);
            startActivity(intent);
        }

    });

    EditText editText1 = (EditText) findViewById(R.id.one);
    one=editText1.getText().toString();
    EditText editText2 = (EditText) findViewById(R.id.two);
    two=editText1.getText().toString();
    EditText editText3 = (EditText) findViewById(R.id.three);
    three=editText1.getText().toString();
    EditText editText4 = (EditText) findViewById(R.id.four);
    four=editText1.getText().toString();
    EditText editText5 = (EditText) findViewById(R.id.five);
    five=editText1.getText().toString();

}
String one,two,three,four,five; //this represents the five players
}

////////activity_main2.xml (lineup view xml file)///////
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout   xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.ryan.basketballscorekeeper.Main2Activity"
android:orientation="vertical"
>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/bballcourt"
        android:scaleType="centerCrop"
        />

    <TextView
        android:id="@+id/lineups"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#ffffff"
        android:text="Lineups"
        android:textSize="30dp"
        android:padding="30dp"
        />

    <EditText
        android:textColor="#ffffff"
        android:id="@+id/one"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:maxLines="1"
        android:layout_below="@id/lineups"
        />
    <EditText
        android:textColor="#ffffff"
        android:id="@+id/two"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:maxLines="1"
        android:layout_below="@id/one"
        />
    <EditText
        android:textColor="#ffffff"
        android:id="@+id/three"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:maxLines="1"
        android:layout_below="@id/two"
        />
    <EditText
        android:textColor="#ffffff"
        android:id="@+id/four"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:maxLines="1"
        android:layout_below="@id/three"
        />
    <EditText
        android:textColor="#ffffff"
        android:id="@+id/five"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:maxLines="1"
        android:layout_below="@id/four"
        />
    <Button
        android:id="@+id/main_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Score"
        android:textAllCaps="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:padding="15dp"
        android:layout_margin="10dp"
        android:textSize="20dp"
        android:background="#ff8000"

        />
    </RelativeLayout>

</LinearLayout>