android自定义分享
㈠ 手机怎么分享app给好友
手机上安装了某个APP,要如何把它分享给朋友?很多APP都是通过手机自带的应用商店下载安装的,并没有留下安装包,怎样才能把它传输给朋友呢?比较常规的方法是,使用一些带有高级功能的文件浏览器,将APP复制出来成为APK安装包,然后再把APK分享给他人。但这类文件管理器使用略复杂,有没有更加简便直接的方法?今天介绍的这款小工具就是了。
SendApp软件版本:1.8Android软件立即查看
这款小工具的名称叫“SendApp”,是一款来自个人开发者的作品,没有什么多余的权限。它的使用非常简单,开启后,即可看到手机中已安装APP的列表。如果你点击其中一个APP,会弹出相应的功能菜单,可以看到有“发送APK”、“抽取”等功能。
SendApp界面,点击列表中的APP即会弹出功能菜单
顾名思义,“发送APK”就是将APP以APK的形式,直接通过安卓的分享接口,发送给其他人。利用这个功能,很轻易就能够通过QQ、微信乃至蓝牙、WiFi传输等形式,把APP分享出去。而“抽取”功能则会把APP对应的APK安装包保存到本地目录,这个目录是可以通过设置来自定义的,可以根据自己的使用习惯来设定。
可以以APK的形式,发送APP,或者把APK保存到本地
SendApp这款工具还有一些其他比较人性化的功能。例如,一般来说,从安卓将APP保存为APK,APK文件会以APP的包名作为文件名,而SendApp则会将APK保存为APP的名字。又例如,SendApp直接可以利用包名生成应用商店的链接,想要通过应用商店找到已安装的APP,这款SendApp可以算是个捷径。
可以开启该APP的商店页面,还支持同时分享、提取多个APP
总的来说,SendApp是一款功能简单但不失实用的安卓小工具,虽然一些老手未必用得上它,但对于不熟悉安卓机操作的朋友来说,有不小的帮助。如果你也正烦恼不知道该如何把手机已安装的APP分享给他人,不妨试试这款小工具吧
㈡ 如何自定义Android Dialog的样式
如何自定义Android Dialog的样式? Android 中自定义Dialog的样式,主要是通过自定义的xml,然后载入到dialog的背景中,如下步骤:
1、自定义Dialog
final Dialog dialog = new Dialog(this, R.style.Theme_dialog);
2、窗口布局
View contentView = LayoutInflater.from(this).inflate(R.layout.select_list_dialog,null);
3、把设定好的窗口布局放到dialog中
dialog.setContentView(contentView);
4、设定点选视窗空白处取消会话
dialog.setCanceledOnTouchOutside(true);
5、具体的操作
ListView msgView = (ListView)contentView.findViewById(R.id.listview_flow_list);
6、展示视窗
dialog.show();例:final Dialog dialog = new Dialog(this,R.style.Theme_dialog);View contentView =LayoutInflater.from(this).inflate(R.layout.select_list_dialog, null);dialog.setContentView(contentView);dialog.setCanceledOnTouchOutside(true);ListView msgView = (ListView)contentView.findViewById(R.id.listview_flow_list);TextView titleText = (TextView)contentView.findViewById(R.id.title);titleText.setText("请选择银行卡");SelectBankCardDialogAdapter adapter =new SelectBankCardDialogAdapter(this, mBankcardList);msgView.setAdapter(adapter);msgView.setOnItemClickListener(newOnItemClickListener() {@Overridepublic void onItemClick(AdapterViewparent, View view, int position, long id) {Toast.makeText(RechargeFlowToMobileActivity.this, position+"",0).show();mSelectCard =mBankcardList.get(position);String area = mSelectCard.getBank_card();mCardNumberText.setText(area);dialog.di *** iss();}});Button closeBtn = (Button)contentView.findViewById(R.id.close);closeBtn.setClickable(true);closeBtn.setOnClickListener(newView.OnClickListener() {@Overridepublic void onClick(View v) {dialog.di *** iss();}});dialog.show();
以上就是在Android开发自定义dialog样式的方法和步骤,android很多的控制元件都提供了接口或者方法进行样式的定义和修改。
如何自定义android Button样式
返回部落格列表
转 android自定义button样式
sumpower
释出时间: 2014/02/25 19:56
阅读: 4162
收藏: 0
点赞: 0
评论: 0
摘要
android自定义button样式
在Android开发应用中,预设的Button是由系统渲染和管理大小的。而我们看到的成功的移动应用,都是有着酷炫的外观和使用体验的。因此,我们在开发产品的时候,需要对预设按钮进行美化。在本篇里,笔者结合在应用开发中的经验,探讨一下自定义背景的按钮、自定义形状按钮的实现方法。
首先看实现效果截图:
自定义背景的按钮目前有2种方式实现,向量和点阵图。
1. 向量图形绘制的方式
向量图形绘制的方式实现简单,适合对于按钮形状和图案要求不高的场合。步骤如下:
(a) 使用xml定义一个圆角矩形,外围轮廓线实线、内填充渐变色,xml程式码如下。
view plain
bg_alibuybutton_default.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="地址">
<item>
<shape android:shape="rectangle">
<solid android:color="#FFEC7600" />
<corners
android:LeftRadius="5dip"
android:RightRadius="5dip"
android:bottomLeftRadius="5dip"
android:bottomRightRadius="5dip" />
</shape>
</item>
<item android:="1px" android:bottom="1px" android:left="1px" android:right="1px">
<shape>
<gradient
android:startColor="#FFEC7600" android:endColor="#FFFED69E"
android:type="linear" android:angle="90"
android:centerX="0.5" android:centerY="0.5" />
<corners
android:LeftRadius="5dip"
android:RightRadius="5dip"
android:bottomLeftRadius="5dip"
android:bottomRightRadius="5dip" />
</shape>
</item>
</layer-list>
同样定义bg_alibuybutton_pressed.xml和bg_alibuybutton_selected.xml,内容相同,就是渐变颜色不同,用于按钮按下后的背景变化效果。
(b) 定义按钮按下后的效果变化描述档案drawable/bg_alibuybutton.xml,程式码如下。
view plain
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="地址">
<item android:state_pressed="true"
android:drawable="@drawable/bg_alibuybutton_pressed" />
<item android:state_focused="true"
android:drawable="@drawable/bg_alibuybutton_selected" />
<item android:drawable="@drawable/bg_alibuybutton_default" />
</selector>
(c) 在你需要的接口定义档案中,如layout/main.xml中定义一个Button控制元件。
view plain
<Button
android:layout_width="120dip"
android:layout_height="40dip"
android:text="向量背景按钮" android:background="@drawable/bg_alibuybutton" />
这样,自定义背景的按钮就可以使用了,在实现onClick方法后就可以响应操作。
android自带的样式比较难看,如何能够自定义按钮的样式,使其显示的跟美工设计的效果一样,现与大家分享下
在layout中新增2个按钮,从下图中可以看出在按钮中呼叫了style和android:background属性,这两个属性一个是自定义样式,一个是给按钮新增背景图片
展开res目录,可以看到在values目录下有styles.xml档案,该档案用于自定义样式,双击开启
标注的是我自定义的样式,name为BtnStyle,当按钮呼叫自定义样式的时候访问这个name
在button中呼叫自定义样式的方法,比较简单
如何往按钮中新增自定义图片,使按钮看起来更漂亮些,因不同手机分辨率不同,那必然牵扯到图片的拉伸,在android系统下有个很好的技术“九宫格“,可以对图片进行处理,只对区域性进行拉伸,给工具目录储存在android\sdk\tools\draw9patch.bat,经过该工具处理的图片以.9.png结尾,放到drawable资料夹中
在Button中通过android:background属性载入图片的方法,至此我们自定义的按钮样式也就完成了,当然这只是个引子,在具体的专案工程中实现的效果要比这个demo复杂很多,有好的设计思路欢迎交流。
㈢ Carson带你学Android:手把手教你写一个完整的自定义View
自定义View一共分为两大类,具体如下图:
对于自定义View的类型介绍及使用场景如下图:
在使用自定义View时有很多注意点(坑),希望大家要非常留意:
View的内部本身提供了post系列的方法,完全可以替代Handler的作用,使用起来更加方便、直接。
主要针对View中含有线程或动画的情况: 当View退出或不可见时,记得及时停止该View包含的线程和动画,否则会造成内存泄露问题 。
当View带有滑动嵌套情况时,必须要处理好滑动冲突,否则会严重影响View的显示效果。
接下来,我将用自定义View中最常用的 继承View 来说明自定义View的具体应用和需要注意的点
在下面的例子中,我将讲解:
下面我将逐个步骤进行说明:
步骤1:创建自定义View类(继承View类)
特别注意:
步骤2:在布局文件中添加自定义View类的组件及显示
至此,一个基本的自定义View已经实现了,运行效果如下图。
接下来继续看自定义View关于属性自定义的问题:
先来看wrap_content & match_parent属性的区别
如果不手动设置支持 wrap_content 属性,那么 wrap_content 属性是不会生效(显示效果同 match_parent )
padding 属性:用于设置控件内容相对控件边缘的边距;
如果不手动设置支持padding属性,那么padding属性在自定义View中是不会生效的。
绘制时考虑传入的padding属性值(四个方向)。
除了常见的以android:开头的系统属性(如下所示),很多场景下自定义View还需要系统所没有的属性,即自定义属性。
实现自定义属性的步骤如下:
下面我将对每个步骤进行具体介绍
对于自定义属性类型 & 格式如下:
至此,一个较为规范的自定义View已经完成了。
Carson_Ho的github: 自定义View的具体应用
不定期分享关于 安卓开发 的干货,追求 短、平、快 ,但 却不缺深度 。
㈣ 怎么自定义Android标题栏修改TitleBar的布局
Android程序默认的Activity标题栏只能显示一段文字,而且不能改变它的布局、颜色、标题栏的高度等。如果想要在标题栏加上个图标、button、输入框、进度条、修改标题栏颜色等,只能使用自定义的标题栏。自定义标题栏可以通过在onCreate函数中添加以下代码来实现,需要注意的是代码的顺序必须按照下面的样式,否则将无效。
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.mainactivity); //Activity的布局
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.titlebar); //标题栏的布局
虽然上面这样可以在标题栏加入一些控件,但是仍然不能改变标题栏的高度、背景色,要想达到这个目的,只能使用theme(主题)。因此往project里先添加一个style。改变背景色修改android:windowTitleBackgroundStyle的值,改变标题栏高度则修改android:windowTitleSize的值。下面是一个示例:
接着再修改AndroidManifest.xml文件,找到要自定义标题栏的Activity,添加上android:theme值,比如:
Java代码
android:theme值就是上面那个style.xml文件里定义的一个style的name值。
按照以上的步骤,修改标题栏布局、高度、背景色的功能就实现了。