目录
一个游戏,未完,待续
fragment
碎片的生命周期
给碎片创建布局,创建碎片
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/fragment_test"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@mipmap/msg"
android:scaleType="fitXY"
/>
</LinearLayout>
package com.example.linj.fragmentapplication.fragment;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
import com.example.linj.fragmentapplication.R;
/**
* Created by Administrator on 2015/9/6.
*/
public class TestFragment extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.test_fragment_lyout, null);
return view;
}
}
//在活动中加载碎片,活动和碎片之间的通信通过fragmentManager
fragmentManager = getSupportFragmentManager();
//在碎片中则通过getActivity与活动通信
数据存储之文件存储,sharedPreferences
文件存储和sharedPreference存储
在布局文件中新建几个按钮和一个edittext,一个textview简单实现存储的读出和写入
package com.example.linj.myapplication;
import android.content.SharedPreferences;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
private EditText mEditText;
private Button mButtonWrite;
private Button mButtonRead;
private TextView mTextShow;
private SharedPreferences preferences;
private Button mButtonWriteCache;
private Button mButtonReadCache;
private File file;
private Button mButtonSdcard;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mEditText = (EditText) findViewById(R.id.edit_shared);
mTextShow = (TextView) findViewById(R.id.text_show);
mButtonWrite = (Button) findViewById(R.id.button_write);
mButtonRead = (Button) findViewById(R.id.button_read);
mButtonWriteCache = (Button) findViewById(R.id.write_cache);
mButtonReadCache = (Button) findViewById(R.id.read_cache);
mButtonSdcard = (Button) findViewById(R.id.sdcard);
mButtonWrite.setOnClickListener(this);
mButtonRead.setOnClickListener(this);
mButtonWriteCache.setOnClickListener(this);
mButtonReadCache.setOnClickListener(this);
mButtonSdcard.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// preferences = getPreferences( MODE_PRIVATE);
preferences = getSharedPreferences("someInformation", MODE_PRIVATE);
switch (v.getId()) {
case R.id.button_write:
try {
String text = mEditText.getText().toString();
FileOutputStream os = openFileOutput("cache",MODE_PRIVATE);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(os));
writer.write(text);
writer.flush();
writer.close();
os.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// SharedPreferences.Editor editor = preferences.edit();
// editor.putString("key", mEditText.getText().toString());
// editor.commit();
mEditText.setText("");
break;
case R.id.button_read:
String text = preferences.getString("key", "错误");
mTextShow.setText(text);
break;
case R.id.write_cache:
String text2 = mEditText.getText().toString();
file = new File(getCacheDir(),"helloWorld");
if (!file.exists()){
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
try {
FileOutputStream outputStream = new FileOutputStream(file);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(outputStream));
writer.write(text2);
writer.flush();
writer.close();
outputStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
break;
case R.id.read_cache:
try {
FileInputStream inputStream = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
String line = br.readLine();
while(line !=null){
mTextShow.setText(line);
line = br.readLine();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
break;
case R.id.sdcard:
String text3 = mEditText.getText().toString();
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath(),"abc");
if (!file.exists()){
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
try {
FileOutputStream outputStream = new FileOutputStream(file);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(outputStream));
writer.write(text3);
writer.flush();
writer.close();
outputStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
break;
default:
break;
}
}
}
Android的最重要的存储方式,数据库存储,还有网络存储等等下次再一起写
总结
我好像又忘了写注释了,罪过罪过,没有下次了,代码规范是编程永恒不变的要求,切记切记!边学习,边记录,见证菜鸟的成长之路。