fframe怎么保存安卓能下载吗

document.frames和window.frames在不同浏览器中的使用
已有 12318 次阅读
|个人分类:|系统分类:|关键词:浏览器
1、问题document.frames只有IE、Opera浏览器支持,等同于window.frames,用来获取window对象的集合。而在Firefox、Chrome、Safari浏览器中使用document.frames不能获取到Frame元素。2、解决办法用window.frames[]代替document.frames()或document.frames[],例如。父页面文档: & & & &&iframe id=&mainFrame& frameborder=&0& scrolling=&yes& &src=&& width=&100%& height=&100%&&&/iframe&& & & & &jQuery(&#mainFrame&)[0].src='/web/common/infowh_mt.html'; & & & &$(&#btn_edit&).click(function() { & & & & & & &// 获取id为mainFrame的&iframe&或框架的window对象。 & & & & & & &var framePage = window.frames[&mainFrame&]; & & & & & & &framePage.update(); & & & & });&子页面文档: & & & & //修改时 &界面控件可录入 &供父界面调用 & & & & window.update = function(){ & & & & & & & alert('供父界面调用'); & & & & }&
转载本文请联系原作者获取授权,同时请注明本文来自程冬科学网博客。链接地址:
上一篇:下一篇:
当前推荐数:0
评论 ( 个评论)
扫一扫,分享此博文
作者的其他最新博文
热门博文导读
Powered by
Copyright &48102人阅读
Android精华教程(20)
转载请注明出处:记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad。然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发。当时项目组定的方案是,制作两个版本的App,一个手机版,一个Pad版。由于当时手机版的主体功能已经做的差不多了,所以Pad版基本上就是把手机版的代码完全拷过来,然后再根据平板的特性部分稍作修改就好了。但是,从此以后我们就非常苦逼了。每次要添加什么新功能,同样的代码要写两遍。每次要修复任何bug,都要在手机版代码和Pad版代码里各修改一遍。这还不算什么,每到出版本的时候就更离谱了。华为要求每次需要出两个版本,一个华为内网环境的版本,一个客户现场的版本,而现在又分了手机和Pad,也就是每次需要出四个版本。如果在出完版本后自测还出现了问题,就可以直接通宵了。这尤其是苦了我们的X总(由于他dota打的比较好,我都喜欢叫他X神)。他在我们项目组中单独维护一个模块,并且每次打版本都是由他负责,加班的时候我们都能跑,就是他跑不了。这里也是赞扬一下我们X神的敬业精神,如果他看得到的话。经历过那么苦逼时期的我也就开始思考,可不可以制作同时兼容手机和平板的App呢?答案当然是肯定的,不过我这个人比较懒,一直也提不起精神去钻研这个问题。直到我一个在美国留学的朋友Gong让我帮她解决她的研究生导师布置的作业(我知道你研究生导师看不懂中文 ^-^),正好涉及到了这一块,也就借此机会研究了一下,现在拿出来跟大家分享。我们先来看一下Android手机的设置界面,点击一下Sound,可以跳转到声音设置界面,如下面两张图所示:& & & & & &然后再来看一下Android Pad的设置界面,主设置页面和声音设置页面都是在一个界面显示的,如下图所示:如果这分别是两个不同的App做出的效果,那没有丝毫惊奇之处。但如果是同一个App,在手机上和平板上运行分别有以上两种效果的话,你是不是就已经心动了?我们现在就来模拟实现一下。首先你需要对Fragment有一定的了解,如果你还没接触过Fragment,建议可以先阅读&&这篇文章。并且本次的代码是运行在Android 4.0版本上的,如果你的SDK版本还比较低的话,建议可以先升升级了。新建一个Android项目,取名叫FragmentDemo。打开或新建MainActivity作为程序的主Activity,里面有如下自动生成的内容:public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}作为一个Android老手,上面的代码实在太小儿科了,每个Activity中都会有这样的代码。不过今天我们的程序可不会这么简单,加载布局这一块还是大有文章的。打开或新建res/layout/activity_main.xml作为程序的主布局文件,里面代码如下:&LinearLayout xmlns:android=&/apk/res/android&
xmlns:tools=&/tools&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
android:orientation=&horizontal&
tools:context=&.MainActivity& &
android:id=&@+id/menu_fragment&
android:name=&com.example.fragmentdemo.MenuFragment&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
&/LinearLayout&这个布局引用了一个MenuFragment,我们稍后来进行实现,先来看一下今天的一个重点,我们需要再新建一个activity_main.xml,这个布局文件名和前面的主布局文件名是一样的,但是要放在不同的目录下面。在res目录下新建layout-large目录,然后这个目录下创建新的activity_main.xml,加入如下代码:&LinearLayout xmlns:android=&/apk/res/android&
xmlns:tools=&/tools&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
android:orientation=&horizontal&
android:baselineAligned=&false&
tools:context=&.MainActivity&
android:id=&@+id/left_fragment&
android:name=&com.example.fragmentdemo.MenuFragment&
android:layout_width=&0dip&
android:layout_height=&fill_parent&
android:layout_weight=&1&
&FrameLayout
android:id=&@+id/details_layout&
android:layout_width=&0dip&
android:layout_height=&fill_parent&
android:layout_weight=&3&
&&/FrameLayout&
&/LinearLayout&这个布局同样也引用了MenuFragment,另外还加入了一个FrameLayout用于显示详细内容。其实也就是分别对应了平板界面上的左侧布局和右侧布局。这里用到了动态加载布局的技巧,首先Activity中调用&setContentView(R.layout.activity_main) ,表明当前的Activity想加载activity_main这个布局文件。而Android系统又会根据当前的运行环境判断程序是否运行在大屏幕设备上,如果运行在大屏幕设备上,就加载layout-large目录下的activity_main.xml,否则就默认加载layout目录下的activity_main.xml。关于动态加载布局的更多内容,可以阅读 &这篇文章。下面我们来实现久违的MenuFragment,新建一个MenuFragment类继承自Fragment,具体代码如下:public class MenuFragment extends Fragment implements OnItemClickListener {
* 菜单界面中只包含了一个ListView。
private ListView menuL
* ListView的适配器。
private ArrayAdapter&String&
* 用于填充ListView的数据,这里就简单只用了两条数据。
private String[] menuItems = { &Sound&, &Display& };
* 是否是双页模式。如果一个Activity中包含了两个Fragment,就是双页模式。
private boolean isTwoP
* 当Activity和Fragment建立关联时,初始化适配器中的数据。
public void onAttach(Activity activity) {
super.onAttach(activity);
adapter = new ArrayAdapter&String&(activity, android.R.layout.simple_list_item_1, menuItems);
* 加载menu_fragment布局文件,为ListView绑定了适配器,并设置了监听事件。
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.menu_fragment, container, false);
menuList = (ListView) view.findViewById(R.id.menu_list);
menuList.setAdapter(adapter);
menuList.setOnItemClickListener(this);
* 当Activity创建完毕后,尝试获取一下布局文件中是否有details_layout这个元素,如果有说明当前
* 是双页模式,如果没有说明当前是单页模式。
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (getActivity().findViewById(R.id.details_layout) != null) {
isTwoPane =
isTwoPane =
* 处理ListView的点击事件,会根据当前是否是双页模式进行判断。如果是双页模式,则会动态添加Fragment。
* 如果不是双页模式,则会打开新的Activity。
public void onItemClick(AdapterView&?& arg0, View view, int index, long arg3) {
if (isTwoPane) {
Fragment fragment =
if (index == 0) {
fragment = new SoundFragment();
} else if (index == 1) {
fragment = new DisplayFragment();
getFragmentManager().beginTransaction().replace(R.id.details_layout, fragment).commit();
Intent intent =
if (index == 0) {
intent = new Intent(getActivity(), SoundActivity.class);
} else if (index == 1) {
intent = new Intent(getActivity(), DisplayActivity.class);
startActivity(intent);
}这个类的代码并不长,我简单的说明一下。在onCreateView方法中加载了menu_fragment这个布局,这个布局里面包含了一个ListView,然后我们对这个ListView填充了两个简单的数据&&Sound& 和 &Display& 。又在onActivityCreated方法中做了一个判断,如果Activity的布局中包含了details_layout这个元素,那么当前就是双页模式,否则就是单页模式。onItemClick方法则处理了ListView的点击事件,发现如果当前是双页模式,就动态往details_layout中添加Fragment,如果当前是单页模式,就直接打开新的Activity。我们把MenuFragment中引用到的其它内容一个个添加进来。新建menu_fragment.xml文件,加入如下代码:&?xml version=&1.0& encoding=&UTF-8&?&
&LinearLayout xmlns:android=&/apk/res/android&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent& &
android:id=&@+id/menu_list&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
&&/ListView&
&/LinearLayout&然后新建SoundFragment,里面内容非常简单:public class SoundFragment extends Fragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.sound_fragment, container, false);
}这里SoundFragment需要用到sound_fragment.xml布局文件,因此这里我们新建这个布局文件,并加入如下代码:&?xml version=&1.0& encoding=&utf-8&?&
&RelativeLayout xmlns:android=&/apk/res/android&
android:layout_width=&match_parent&
android:layout_height=&match_parent&
android:background=&#00ff00&
android:orientation=&vertical& &
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:layout_centerInParent=&true&
android:textSize=&28sp&
android:textColor=&#000000&
android:text=&This is sound view&
&/RelativeLayout&同样的道理,我们再新建DisplayFragment和display_fragment.xml布局文件:public class DisplayFragment extends Fragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.display_fragment, container, false);
}&?xml version=&1.0& encoding=&utf-8&?&
&RelativeLayout xmlns:android=&/apk/res/android&
android:layout_width=&match_parent&
android:layout_height=&match_parent&
android:background=&#0000ff&
android:orientation=&vertical& &
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:layout_centerInParent=&true&
android:textSize=&28sp&
android:textColor=&#000000&
android:text=&This is display view&
&/RelativeLayout&然后新建SoundActivity,代码如下:public class SoundActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sound_activity);
}这个Activity只是加载了一个布局文件,现在我们来实现sound_activity.xml这个布局文件:&?xml version=&1.0& encoding=&utf-8&?&
&fragment xmlns:android=&/apk/res/android&
android:id=&@+id/sound_fragment&
android:name=&com.example.fragmentdemo.SoundFragment&
android:layout_width=&match_parent&
android:layout_height=&match_parent& &
&/fragment&这个布局文件引用了SoundFragment,这样写的好处就是,以后我们只需要在SoundFragment中修改代码,SoundActivity就会跟着自动改变了,因为它所有的代码都是从SoundFragment中引用过来的。好,同样的方法,我们再完成DisplayActivity:public class DisplayActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.display_activity);
}然后加入display_activity.xml:&?xml version=&1.0& encoding=&utf-8&?&
&fragment xmlns:android=&/apk/res/android&
android:id=&@+id/display_fragment&
android:name=&com.example.fragmentdemo.DisplayFragment&
android:layout_width=&match_parent&
android:layout_height=&match_parent& &
&/fragment&现在所有的代码就都已经完成了,我们来看一下效果吧。首先将程序运行在手机上,效果图如下:分别点击Sound和Display,界面会跳转到声音和显示界面:& & & & & &然后将程序在平板上运行,点击Sound,效果图如下:然后点击Display切换到显示界面,效果图如下:这样我们就成功地让程序同时兼容手机和平板了。当然,这只是一个简单的demo,更多复杂的内容需要大家自己去实现了。好了,今天的讲解到此结束,有疑问的朋友请在下面留言。关注我的技术公众号,每天都有优质技术文章推送。关注我的娱乐公众号,工作、学习累了的时候放松一下自己。
微信扫一扫下方二维码即可关注:
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:5951487次
积分:37803
积分:37803
排名:第88名
原创:95篇
评论:12492条
《第二行代码》已出版新书基于Android 7.0系统全面升级全书使用Android Studio 2.2进行开发更加入了许多振奋人心的新技术
网上购买:
关注我的技术公众号,每天都有优质技术文章推送。
关注我的娱乐公众号,工作、学习累了的时候放松一下自己。
微信扫一扫上方二维码即可关注
感兴趣的朋友可以加入我的QQ群,一起讨论学习,共同进步。
阅读:411375
(1)(1)(2)(1)(1)(1)(1)(2)(1)(1)(2)(1)(1)(2)(1)(1)(1)(1)(1)(1)(1)(2)(2)(3)(1)(2)(5)(3)(3)(2)(1)(3)(1)(2)(5)(4)(4)(4)(4)(5)(5)(5)(6)(4)FFrame ios苹果版下载|FFrame iPhone/iPad版下载 1.4.4 - 跑跑车苹果网
|||||跑跑车苹果下载站
FFrame iPhone/iPad版大小:58.3M  / 语言:简体 / 时间:
应用介绍相关专题下载地址
一款集拼图与滤镜功能于一体的软件FFrame,通过FFrame ios苹果版即可体验丰富的素材资源,用你的创意将图片组成一幅新作品。软件介绍FFrame 是滤镜加拼图的梦幻组合~它不只是单纯地将图片拼接在一起,而是以独特的设计思路,将几张图片组成一件新的作品。功能虽常见,但是当它们在一起配上不常见的操作方式,仍是很有新鲜感。软件功能[滤光镜]: 提供20余款完美无瑕、美轮美奂的滤光镜。[编排]: 可以在框架内添加/删除单元、调整间隔与画布尺寸。[边框]: 调整空白、把内部和外部调整成圆形棱角、调整单元间隔、提供阴影功能。[文字]: 提供各种字体、可以输入多行、提供各种颜色。[图章]: 提供50种与活动相配的图章。[编辑]: 提供返回、重试功能来帮助编辑上的失误。[分辨率]: 可以打印高分辨率的原件照片。[分享]: 支持 Weibo, Facebook、Twitter、Instagram。
FFrame iPhone/iPad版 官方地址
应用大小 :73.2M应用大小 :6.5M应用大小 :33.3M应用大小 :70.4M应用大小 :47.9M应用大小 :22.5M应用大小 :58.1M应用大小 :31.6M应用大小 :53.3M
FFrame iPhone/iPad版 官方地址PicFrame相框 2.8
大小:3.48 MB
扫描下载应用到手机
PicFrame相框应用截图
看了PicFrame相框的用户还看了
用户评分:
发表评论:
请写下您想说的话
是一款可以拼接照片并与好友分享的照片编辑应用,最多可以支持5张图片,提供了32种效果,可选择相框背景的颜色和图案,还可以更改边框宽度。相框中的照片可以缩放、平移、旋转或者生成镜像,拖拉照片边框即可调整大小。PicFrame相框2.5.6:Support for Android 4.4 devices (Nexus 5).Updated interface.PicFrame相框2.5.3:Fixed bug that could cause crash when zooming in a photoPicFrame相框1.5:Fixed bug that would cause a crash when inserting a photo into frames on
certain devices.1.3.2:Fixed sharing bug that appeared on some devices.Fixed bug that would cause a crash when loading a frame on more recent devices.
资源大小:3.48 MB
应用分类:
下载次数:12,822 次
语言种类:英文
系统要求:Android 2.2 或更高版本
更新时间:
安全检测:
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
TA认为很好
TA认为较差
TA认为很好
TA认为很好
TA认为很好
设置手机机型
请选择手机品牌:
PicFrame相框 2.8
扫描下载应用到手机
应用安装包下载地址:安装后,您可能在通知栏看到不明来源的广告信息,影响您的使用体验。
FRAME 截图
FRAME 历史版本
版本:1.0.3
FRAME 使用技巧
FRAME 应用内最新内容
24 万人安装
5526 万人安装
143 万人安装
707 万人安装
3.8 亿人安装
819 万人安装
1588 万人安装
415 万人安装
251 万人安装
11 万人安装
6.2 亿人安装
6.5 亿人安装
2.7 亿人安装
6.5 亿人安装
9342 万人安装
4.9 亿人安装
6.1 亿人安装
8996 万人安装
2.4 亿人安装
2.5 亿人安装
我们的产品
豌豆实验室
帮助与支持
24小时客服电话
除非特别注明,应用程序由第三方市场提供,豌豆荚仅根据你的指令提供搜索结果链接,与出处无关,详情请参阅
扫一扫安装豌豆荚安卓客户端}

我要回帖

更多关于 fframe 安卓版 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信