CSDN社区Android版FAQ大征集活动火热进行中!

CSDN 2012-05-14 03:25:37
加精
工欲善其事,必先利其器,要想提高学习效率,一份好的参考资料必不可少,为了鼓励大家总结Android开发常见问题,共同打造全面实用的Android开发参考手册,CSDN社区特举办“Android版FAQ大征集活动”活动。

参与活动就有机会获得最新《程序员》杂志一本,心动不如行动噢。

活动时间:即日起~5月27日24:00进行内容提交,5月28日~5月30日进行整理审核,5月31日发布FAQ帖,并在Android版长期置顶。

活动规则:本活动有两种参与方式,大家可以根据自己的喜好选择。

1.你认为在Android开发的学习中有哪些常见问题?请将问题和相应答案以回帖形式在本帖中回复。

2.如果您觉得有的帖子中(限CSDN站内)涉及到的问题也比较常见并且已经有了很好的解决方案,可以在帖子中回复帖子链接,并注明答案所在楼层。

内容提交结束后,社区会请版主和社区专家作为评委进行审核,通过审核的内容都会在FAQ帖中展示。

奖品设置

1.积极参与奖:凡是成功参与活动的用户,都可以获得100可用分,20下载分。

2.优秀内容奖:凡是提供内容较为优秀,受到版主和社区专家认可的用户,都有机会获得最新《程序员》杂志一本,共20本,数量有限,先到先得。

本活动最终解释权归CSDN所有,如有疑问请与楼主联系,或是发送邮件到 webmaster(at)csdn.net
...全文
2239 68 打赏 收藏 转发到动态 举报
写回复
用AI写文章
68 条回复
切换为时间正序
请发表友善的回复…
发表回复
gchm 2015-01-09
  • 打赏
  • 举报
回复
MARK 一下,回头好好看
昵称无法识别 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 29 楼 的回复:]

我的程序为什么不能访问“/data"目录?
[/Quote]
因为运行程序的手机没有root权限
beyond50020 2012-06-11
  • 打赏
  • 举报
回复
来来看看 学习了
zhusbJava 2012-06-06
  • 打赏
  • 举报
回复
马克下先。
菜鸟路过 围观各位大神
独上西楼 2012-05-31
  • 打赏
  • 举报
回复
[Quote=引用 52 楼 的回复:]

怎么制作第一次程序启动时的向导界面?

网上很多向导界面滑到最后一页,再滑就不能进到程序主界面了,经过几番实践,终于解决了这个问题。

首先从网上下载一个android-support-v4.jar包,准备好程序向导界面要用到的几幅图片,要是透明的图片,再准备好一个底图。

源代码:
Java code

import java.util.ArrayList;
import ja……
[/Quote]
先mark一下,回头再看
独上西楼 2012-05-31
  • 打赏
  • 举报
回复
MARK 一下,回头好好看
独上西楼 2012-05-31
  • 打赏
  • 举报
回复
MARK 一下,回头好好看
juzi 2012-05-30
  • 打赏
  • 举报
回复
支持呀,呵呵
z123456790 2012-05-30
  • 打赏
  • 举报
回复
顶一个。。。。。。。。
z123456790 2012-05-30
  • 打赏
  • 举报
回复
顶一个。。。。。。。。
z123456790 2012-05-30
  • 打赏
  • 举报
回复
顶一个。。。。。。。。
江清清 2012-05-30
  • 打赏
  • 举报
回复
支持 支持
zhang957411207 2012-05-29
  • 打赏
  • 举报
回复
[Quote=引用 44 楼 的回复:]

这么多高手在这里,请教下个问题阿,我的一个工程,启动后读取某布局文件,正常。但是我按锁屏键的时候就报错了,说无法找到刚才那个资源文件的id,我试过清理下工程,重新导入工程,还都是无法解决,求帮助阿
[/Quote]
你要捕获按锁屏键的事件,并处理
kungfu001 2012-05-28
  • 打赏
  • 举报
回复
高手软件开发
横龙村夫 2012-05-27
  • 打赏
  • 举报
回复
接52楼,把平铺底图的函数呈上

public static void drawable_repeat(Context context, int d, View v) {
Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), d);
BitmapDrawable drawable = new BitmapDrawable(bitmap);
drawable.setTileModeXY(TileMode.REPEAT, TileMode.REPEAT);
drawable.setDither(true);
v.setBackgroundDrawable(drawable);
}
横龙村夫 2012-05-27
  • 打赏
  • 举报
回复
怎么制作第一次程序启动时的向导界面?

网上很多向导界面滑到最后一页,再滑就不能进到程序主界面了,经过几番实践,终于解决了这个问题。

首先从网上下载一个android-support-v4.jar包,准备好程序向导界面要用到的几幅图片,要是透明的图片,再准备好一个底图。

源代码:

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.os.Parcelable;
import android.preference.PreferenceManager;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;

public class Guide extends Activity implements OnClickListener,
OnPageChangeListener {

private ViewPager vp;
private ViewPagerAdapter vpAdapter;
private List<View> views;
private RelativeLayout rl;

// 引导图片资源
private static final int[] pics = { R.drawable.guide_1, R.drawable.guide_2,
R.drawable.guide_3, R.drawable.guide_4, R.drawable.guide_5 ,0};

// 记录当前选中位置
private int currentIndex=0;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.guide);
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(Guide.this);
Editor editor = sp.edit();
editor.putBoolean("isFirstStart", false);
editor.commit();
rl = (RelativeLayout)findViewById(R.id.rl);
views = new ArrayList<View>();

LinearLayout.LayoutParams mParams = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);

// 初始化引导图片列表
for (int i = 0; i < pics.length; i++) {
ImageView iv = new ImageView(this);
iv.setLayoutParams(mParams);
iv.setImageResource(pics[i]);
iv.setOnClickListener(this);
views.add(iv);
}
vp = (ViewPager) findViewById(R.id.viewpager);
// 初始化Adapter
vpAdapter = new ViewPagerAdapter(views);
vp.setAdapter(vpAdapter);
// 绑定回调
vp.setOnPageChangeListener(this);
Login.drawable_repeat(this, R.drawable.repeat_background_5, rl);
}

/**
* 设置当前的引导页
*/
private void setCurView(int position) {
if (position < 0 || position >= pics.length) {
return;
}

vp.setCurrentItem(position);
}

// 当滑动状态改变时调用
public void onPageScrollStateChanged(int arg0) {

}

// 当当前页面被滑动时调用
public void onPageScrolled(int arg0, float arg1, int arg2) {
if(currentIndex==views.size()-1){
Intent mainIntent = new Intent(Guide.this,Login.class);
Guide.this.startActivity(mainIntent);
finish();
}
}

// 当新的页面被选中时调用
public void onPageSelected(int arg0) {
// 设置底部小点选中状态
currentIndex = arg0;
}

public class ViewPagerAdapter extends PagerAdapter {

// 界面列表
private List<View> views;

public ViewPagerAdapter(List<View> views) {
this.views = views;
}

// 销毁arg1位置的界面
public void destroyItem(View arg0, int arg1, Object arg2) {
((ViewPager) arg0).removeView(views.get(arg1));
}

public void finishUpdate(View arg0) {

}

// 获得当前界面数
public int getCount() {
if (views != null) {
return views.size();
}

return 0;
}

// 初始化arg1位置的界面
public Object instantiateItem(View arg0, int arg1) {

((ViewPager) arg0).addView(views.get(arg1), 0);

return views.get(arg1);
}

// 判断是否由对象生成界面
public boolean isViewFromObject(View arg0, Object arg1) {
return (arg0 == arg1);
}

public void restoreState(Parcelable arg0, ClassLoader arg1) {

}

public Parcelable saveState() {
return null;
}

public void startUpdate(View arg0) {

}

}

public void onClick(View v) {
if(currentIndex<views.size()-1){
setCurView(currentIndex+1);
}else{
Intent mainIntent = new Intent(Guide.this,Login.class);
Guide.this.startActivity(mainIntent);
finish();
}
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Intent mainIntent = new Intent(Guide.this,Login.class);
Guide.this.startActivity(mainIntent);
finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
}


布局文件guide.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:descendantFocusability="blocksDescendants"
android:layout_height="fill_parent"
android:id="@+id/rl"
android:orientation="vertical" >

<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>

</RelativeLayout>
lolo7413 2012-05-26
  • 打赏
  • 举报
回复
路过,雁过留声,我过留字
ylylyl007 2012-05-26
  • 打赏
  • 举报
回复
要参加本活动,报名
龚震天 2012-05-25
  • 打赏
  • 举报
回复
支持!学习中。。。
wjn1206 2012-05-25
  • 打赏
  • 举报
回复
必须支持,
加载更多回复(45)

9,028

社区成员

发帖
与我相关
我的任务
社区描述
CSDN全站用户和CSDN产品经理、运营人员集中交流讨论CSDN各产品问题的通道,欢迎大家提供建设性的建议,让CSDN变得更好。也请大家不要在这里发布招聘、技术问题等无关CSDN产品的内容,谢谢。
其他 其他
社区管理员
  • 社区公告社区
  • CSDN产品汪
  • CSDN官方博客
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧