当前位置: 编程技术>移动开发
本页文章导读:
▪创建文件不可写的解决方法 创建文件不可写的解决办法
有时候你在ddms中可以看见创建了一个文件用file = new File( getFilesDir() + "/file.txt"); 但是呢它是只读的 这时候你会发现-rw------- ,那怎么才能写呢
1.file = new File( getFil.........
▪ ViewFlipper Animation 运用 ViewFlipper Animation 使用
ViewFlipper [功能]1. ViewFlipper 可以包含多个View 且View之间的切换有Animation 比如:渐变效果[代码]1. 创建包含ViewFlipper 的main.xml 还包含2个Button 用于各个View切换
<?xml ver.........
▪ AsyncTask 跟Timer同时使用 AsyncTask 和Timer同时使用
package com.example.test;
import java.net.URL;
import java.util.Timer;
import java.util.TimerTask;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.InputSource.........
[1]创建文件不可写的解决方法
来源: 互联网 发布时间: 2014-02-18
创建文件不可写的解决办法
有时候你在ddms中可以看见创建了一个文件用file = new File( getFilesDir() + "/file.txt");
但是呢它是只读的 这时候你会发现-rw------- ,那怎么才能写呢
1.file = new File( getFilesDir() + "/file.txt");
openFileOutput("file.txt", MODE_PRIVATE)
2.如果你已经确定他已经创建了 只是只读的 不能写那你可以哟偶那个
FileWriter fWriter;
try {
fWriter = new FileWriter(file, true);
fWriter.write("hello");
fWriter.close();
} catch (IOException e) {
// log error
}
[2] ViewFlipper Animation 运用
来源: 互联网 发布时间: 2014-02-18
ViewFlipper Animation 使用
ViewFlipper
[功能]
1. ViewFlipper 可以包含多个View 且View之间的切换有Animation 比如:渐变效果
[代码]
1. 创建包含ViewFlipper 的main.xml 还包含2个Button 用于各个View切换
2. 设定 Animation 效果
3. 在 ViewFlipper 里面增加各种View
4. View 切换
* 下一个View
* 上一个View
现释出所有代码!
over.
有两种方式:
1.xml中定义:
xml属性:android:flipInterval
如:<ViewFlipper android:id="@+id/flipper" android:flipInterval="5"/>,表示间隔5秒切换一次
2.java代码:
方法:ViewFlipper.setFlipInterval(int milliseconds);参数是秒数,效果跟xml一样
ViewFlipper
[功能]
1. ViewFlipper 可以包含多个View 且View之间的切换有Animation 比如:渐变效果
[代码]
1. 创建包含ViewFlipper 的main.xml 还包含2个Button 用于各个View切换
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" > <Button android:id="@+id/previousButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Previous" /> <Button android:id="@+id/nextButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Next" /> </LinearLayout> <ViewFlipper android:id="@+id/flipper" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" > </ViewFlipper> </LinearLayout>
2. 设定 Animation 效果
flipper = (ViewFlipper) findViewById(R.id.flipper); flipper.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in)); flipper.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out));
3. 在 ViewFlipper 里面增加各种View
flipper.addView(addTextByText("HelloAndroid")); flipper.addView(addImageById(R.drawable.beijing_003_mb5ucom)); flipper.addView(addTextByText("eoe.Android")); flipper.addView(addImageById(R.drawable.beijing_004_mb5ucom)); flipper.addView(addTextByText("Gryphone")); ublic View addTextByText(String text){ TextView tv = new TextView(this); tv.setText(text); tv.setGravity(1); return tv; } public View addImageById(int id){ ImageView iv = new ImageView(this); iv.setImageResource(id); return iv; }
4. View 切换
* 下一个View
flipper.showNext();
* 上一个View
flipper.showPrevious();
现释出所有代码!
over.
1 楼
jj_zerogra
2010-04-08
不知道这个view之间的时间间隔怎么设置?谢了
2 楼
wjb_forward
2010-04-08
jj_zerogra 写道
不知道这个view之间的时间间隔怎么设置?谢了
有两种方式:
1.xml中定义:
xml属性:android:flipInterval
如:<ViewFlipper android:id="@+id/flipper" android:flipInterval="5"/>,表示间隔5秒切换一次
2.java代码:
方法:ViewFlipper.setFlipInterval(int milliseconds);参数是秒数,效果跟xml一样
3 楼
jj_zerogra
2010-04-08
谢了,不过参数好像是毫秒数,呵呵,milliseconds
4 楼
oh老好人
2010-08-24
能做成这种效果不
分左右两边 左边的始终固定不动 右边的翻页
我 觉得好像实现不了
分左右两边 左边的始终固定不动 右边的翻页
我 觉得好像实现不了
5 楼
wangguorui89
2010-12-30
效果的结果事件如何判断。
[3] AsyncTask 跟Timer同时使用
来源: 互联网 发布时间: 2014-02-18
AsyncTask 和Timer同时使用
package com.example.test; import java.net.URL; import java.util.Timer; import java.util.TimerTask; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; import org.xml.sax.InputSource; import org.xml.sax.XMLReader; import android.app.Activity; import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; import android.util.Log; public class MyXmlPoller extends Activity { private Handler handler = new Handler(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); new Timer().schedule(new MyTimerTask(), 0, 1000); } private class MyAsyncTask extends AsyncTask<Integer, Integer, MyData> { protected MyData doInBackground(Integer... counter) { MyData myData = new MyData(); try { URL url = new URL("http://www.example.com/my.xml"); SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLReader xr = sp.getXMLReader(); MySAXHandler mySAXHandler = new Handler(); xr.setContentHandler(mySAXHandler); xr.parse(new InputSource(url.openStream())); myData = mySAXHandler.getParsedData(); return myData; } catch (Exception e) { Log.e("!!!!!!!!!! MyAsyncTask doInBackground error", e.getMessage(), e); return myData; } } protected void onPostExecute(MyData myData) { Log.d("+++++++++++++ MyAsyncTask onPostExecute", myData.toString()); } } // MyAsyncTask private Handler mHandler = new Handler(); public class MyTimerTask extends TimerTask { public void run() { mHandler.post( new Runnable() { public void run() { new MyAsyncTask().execute(""); } }; ) } } }
在这里呢一定要注意TimerTask要运行在Handler中。
当然上面的代码也可以如下变化
URL url = new URL("http://www.example.com/my.xml"); SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLReader xr = sp.getXMLReader(); MyHandler myHandler = new MyHandler(); xr.setContentHandler(myHandler);
将上面的放在onPreExecute() method 中。
http://developer.android.com/intl/fr/reference/android/os/Looper.html
最新技术文章: