lisa项目续
来源:互联网 发布:太湖水利设计院知乎 编辑:程序博客网 时间:2024/05/01 12:52
2014.4.17
lisa1.1正式出炉,先上程序,今晚补上说明
package lisa.l;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.text.DateFormat;import java.util.Date;import android.os.Bundle;import android.os.Environment;import android.app.Activity;import android.view.Menu;import android.view.View;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {// five sub-object, including 5 edittext and one textview will be operated// in this activity, the only sub-object not declared here is textView1String path = Environment.getExternalStorageDirectory() + "/lisa/";File filex = new File(path);File m1 = new File(path + "m1.txt");//lisa 1.2中把五个txt文件合并为一个xml文件,xml文件略大于5个txt文件之和File m2 = new File(path + "m2.txt");File m3 = new File(path + "m3.txt");File m4 = new File(path + "m4.txt");File m5 = new File(path + "m5.txt");@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);if (!filex.exists()) {try {filex.mkdirs();m1.createNewFile();m2.createNewFile();m3.createNewFile();m4.createNewFile();m5.createNewFile();} catch (Exception e) {e.printStackTrace();}}EditText editText1 = (EditText) findViewById(R.id.editText1);EditText editText2 = (EditText) findViewById(R.id.editText2);EditText editText3 = (EditText) findViewById(R.id.editText3);EditText editText4 = (EditText) findViewById(R.id.editText4);EditText editText5 = (EditText) findViewById(R.id.editText5);TextView textView = (TextView) findViewById(R.id.textView2);// show saved textshow(editText1, m1);show(editText2, m2);show(editText3, m3);show(editText4, m4);show(editText5, m5);// set the action of button on click// show the current dateString date = DateFormat.getDateInstance(DateFormat.FULL).format(new Date());textView.setText(date);}public void save(EditText edittext, File m) {// get text in sub-object editText and set it to file mDataOutputStream out;String s = edittext.getText().toString();try {// if any text exists in a EditText, a new file will be used to// store the new text instead of the old oneif (s.length() != 0) {m.delete();m.createNewFile();}out = new DataOutputStream(new FileOutputStream(m));out.writeUTF(s);out.close();} catch (Exception e) {e.printStackTrace();}}public void show(EditText edittext, File m) {// show texts in files if anyDataInputStream in;try {in = new DataInputStream(new FileInputStream(m));edittext.setText(in.readUTF());in.close();} catch (IOException e) {e.printStackTrace();}}public void onSaveClick(View v) {EditText editText1 = (EditText) findViewById(R.id.editText1);EditText editText2 = (EditText) findViewById(R.id.editText2);EditText editText3 = (EditText) findViewById(R.id.editText3);EditText editText4 = (EditText) findViewById(R.id.editText4);EditText editText5 = (EditText) findViewById(R.id.editText5);// save text in each EditText to each Filesave(editText1, m1);save(editText2, m2);save(editText3, m3);save(editText4, m4);save(editText5, m5);// show this after the save action is finishedToast.makeText(getApplicationContext(), "Saved Successfully!",Toast.LENGTH_SHORT).show();}public void onDeleteClick(View v) {EditText editText1 = (EditText) findViewById(R.id.editText1);EditText editText2 = (EditText) findViewById(R.id.editText2);EditText editText3 = (EditText) findViewById(R.id.editText3);EditText editText4 = (EditText) findViewById(R.id.editText4);EditText editText5 = (EditText) findViewById(R.id.editText5);EditText D = null;if (editText1.isFocused() == true)D = editText1;if (editText2.isFocused() == true)D = editText2;if (editText3.isFocused() == true)D = editText3;if (editText4.isFocused() == true)D = editText4;if (editText5.isFocused() == true)D = editText5;D.setText("");}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
<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" android:background="@drawable/lisaback" tools:context=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:text="@string/app_label" android:textSize="16sp" android:textStyle="italic" android:typeface="serif" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_marginBottom="33dp" android:layout_marginLeft="34dp" android:text="@string/current_date" android:textColor="@color/dark" android:textStyle="italic" android:typeface="serif" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/textView2" android:layout_centerHorizontal="true" android:background="@android:color/transparent" android:onClick="onSaveClick" android:text="@string/save" android:textColor="@color/green" android:textStyle="italic" android:typeface="serif" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView2" android:layout_below="@+id/editText5" android:layout_marginTop="43dp" android:textColor="@color/dark" android:textStyle="italic" android:typeface="serif" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_marginLeft="16dp" android:layout_toRightOf="@+id/button1" android:background="@android:color/transparent" android:text="@string/delete" android:onClick="onDeleteClick"/> <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_below="@+id/button2" android:layout_marginTop="18dp" android:ems="10" android:hint="@string/task1" android:inputType="textMultiLine" /> <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_below="@+id/editText1" android:ems="10" android:hint="@string/task2" android:inputType="textMultiLine" /> <EditText android:id="@+id/editText3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_below="@+id/editText2" android:ems="10" android:hint="@string/task3" android:inputType="textMultiLine" /> <EditText android:id="@+id/editText4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_below="@+id/editText3" android:ems="10" android:hint="@string/task4" android:inputType="textMultiLine" /> <EditText android:id="@+id/editText5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_below="@+id/editText4" android:ems="10" android:hint="@string/task5" android:inputType="textMultiLine" /></RelativeLayout>
2014.5.1
将内容序列化存储到xml文件中
XmlSerializer serializer = Xml.newSerializer(); // 由android.util.Xml创建一个XmlSerializer实例DataOutputStream out = new DataOutputStream(new FileOutputStream(m));serializer.setOutput(out, "UTF-8"); // 设置输出方向为outserializer.startDocument("UTF-8", true);serializer.startTag("", "TaskList");serializer.startTag("", "Task");serializer.attribute("", "id", 1 + "");serializer.text(s1);serializer.endTag("", "Task");serializer.endTag("", "TaskList");serializer.endDocument();out.close();
2014.5.11
关于lisa的设想有很多,不过我发现更换背景功能室比较贴近现实需要的,先把这个实现了再说。
2014.7.26
lisa定位为简便、快捷、无广告的免费移动记事/笔记软件。
2014.8.2
lisa是作为一个记事本呢,还是一个日记本。如果是记事,文字简短,输入要快,保存后可能还要经常修改,背景以纯色为佳。如果是日记,文字较长,输入时间充裕,保存后一般不再修改,背景要赏心悦目,有保密需求,有云存储需求,有导出需求。市面上记事本较多,记事本功能简洁,而日记本较少,门槛较高。
文字长度输入时间要修改吗背景其他需求市场现状记事本0-40快有时候要纯色没有多日记本0-400慢一般不要图片保密,云存储,导出少2014.8.12
lisa下载量突破70了,91+安卓市场,lisa更名为Lisa随手记。版本1.4,百度平台还是给力些,应用宝卡在审核环节不动了。希望能有些评论或评分~。
下载地址:http://apk.hiapk.com/appinfo/lisa.i
2014.8.27
有以下工作要做:
1.手机端发送文件到PC端功能,即联网功能
2.保密记录显示问题
3.万能建长按
2014.8.29
ListView是手机上常用的控件,能够表现表格、列表的形式,与java中的ArrayList是很好的搭档。listview是一个viewgroup,将一组textview打包成列表。
2014.9.7
android获取ip有多种场景,wifi和GRPS不同,参考下文
<div class="panel"><form method="post" enctype="text/plain"><textarea name ="new" id="edittext" cols=80 rows=8></textarea><br> <input id="add" type="submit" value="确定" /></form></div>
请求 POST / HTTP/1.1
Accept text/html, application/xhtml+xml, */*
User-Agent Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0; QQBrowser/7.7.26717.400) like Gecko
Referer http://192.168.1.101:9999/
Accept-Language zh-Hans-CN,zh-Hans;q=0.5
Content-Type text/plain
Accept-Encoding gzip, deflate
Host 192.168.1.101:9999
Content-Length 12
Connection Keep-Alive
Cache-Control no-cache
String s=URLDecoder.decode(EntityUtils.toString(inentity), "utf-8");
httpcore没有提供相应的方法,至少我目前没看到。可以用java.net库提供的方法Stringjava.net.URLDecoder.decode(String s, String encoding) throwsUnsupportedEncodingException。
1.3. HTTP exception handling
All HttpCore components potentially throw two types of exceptions: IOException
in case of an I/O failure such as socket timeout or an socket reset andHttpException
that signals an HTTP failure such as a violation of the HTTP protocol. Usually I/O errors are considered non-fatal and recoverable, whereas HTTP protocol errors are considered fatal and cannot be automatically recovered from.
- lisa项目续
- java跨平台项目-lisa
- Lisa Ekdahl
- lisa素材
- Mint12 Lisa 安装配置
- 【摘取】Lisa的故事
- lisa故障表
- lisa大额头 生丽
- Everyone's Victim: Lisa Germano
- lisa with awk build in
- Lisa测试集文档切分
- Lisa随手记 1.5 发布
- Lisa随手记 1.6 帮助
- Lisa随手记 1.6 发布
- Lisa随手记历版默认背景
- Lisa随手记 1.7 帮助
- Lisa随手记 1.7 发布
- Lisa随手记1.8 帮助
- UVA 537 Artificial Intelligence?
- ubuntu12.04.4下git的安装及配置
- Eclipse反编译工具Jad及插件JadClipse配置
- 求n阶方阵中各条反斜线上的元素之和4*4
- Ubuntu 12.04安装Adobe Reader
- lisa项目续
- 使用正则解析html
- 哪些生意能赚人性弱点的钱?
- apache强制使用https
- scala编程笔记(2)List-Tuple-set-map
- mysql left join right join
- qrencode解析二维条形码
- LeetCode(Partition List) 划分链表
- 黑马程序员 —— 网络编程 (第二十四天)