红联Linux门户
Linux帮助

path button

发布时间:2014-02-09 14:59:29来源:红联作者:empast
我是基於??修改的:http://www.oschina.net/p/pathbutton/similar_projects

改它的理由如下:
1、它原????有自??不同的位置,例如想改到上方或者左上角,就比?麻?。
2、它原????有真正移?子按?的物理位置,??是以animation移?了??位置(??left、right?是原?的地方,?是animation本?的性?)。?就使??比?麻?,它原本的方式是全部??事件由父layout接收,??去到哪一?rect就相?不同按?,?就使??父layout的再父layout(姑且叫祖layout)都?法接收到onclick或其他事件。
3、它原本控制click也只??了ontouch的down事件,如果我longclick就?法分辨了。它??做的理由估?是因?down事件你可以?置return false,就不?把click事件?截,它的父控件仍然可以拿到click事件。如果把up也做了,up一定要return true才生效,但return true就等於把事件截取不留?父控件。它??做貌似也能?理好????和遮蔽父控件的??,但感?有?掩耳??,不太??。而且代?也不太??,尤其在activity?要引用?就得引用一堆?西。
4、它???局方式?有考?控件大小,?不?就fill_parent,加上第2???,就把祖控件全遮蔽。
5、它原???的封?程度不足。例如自定?的animation?本?通用性不?,其?可以一?封?在composelayout?,?必要在activity?面又再?用。?果在activity?面要?用很多行才能用得上。而且它原?那?太依??局文件,如果我每次使用的子按??量不相同,又要改一大?。
6、它原本的代??活性不高,例如半?、????都是?死的。

我的修改基本就?理了以上的??。
可以放在不同的位置,四?角和四??上;
子按?可以自定?,?入按?的?片id就可以,?量也?限制(如果你太多也?很?);
自???度高度;
在?局xml中只要?一???控件就可以,不用手工再在?面加一堆imagebutton;
子按?全部移?了物理位置,?且可以直接?予onclicklistener,onlongclick或者ontouch的事件就?做,你有?趣可以自行加上,就?句???不?的;

控件的?置定位在java代??,不在xml?局文件。因?如果在?局文件?加??,又要加attr和命名空?,增加使用??程度(可能高手?得?所?,但?似我???水平??就?得很?)。而且因?有不?定?量的子按?,要用xml????也比??嗦,而且做法可能不太??,所以?有直接在?造函?中??了。有?趣的朋友可以自行再修改。

另外,代??都有注?的了。不?用了???,?得改回??文了,估?能看懂。

以上代?在android2.1模?器上???行??。如果更低的1.5和1.6就不保?了。

项目主页:http://code.google.com/p/path-button/

下载地址:http://code.google.com/p/path-button/downloads/list

来自:开源中国社区
文章评论

共有 0 条评论