我是Android的新手.任何人都可以告诉我它是什么类型的技术?我想在密码字段中添加此功能.我可以知道实现目标的正确方法是什么?您能否帮助我解决任何代码或指南如何正确实现?
解决方法:
您有很多可能创建这种布局:
>一个父relativeLayout,一个在顶部有4个点的linearLayout,在底部用the attributes显示你的视图,如leftOf,toRightOf等. – 创建一个onClickListener方法来改变它们的状态并保存数字.
>具有权重属性的多个linearLayouts填充整个空间,每个视图(四舍五入的数字)填充空间(请参阅下面的示例以了解权重属性) – 或几个relativeLayouts – 甚至是tableLayout.
>或者下面的linearLayout和GrIDVIEw带有ItemClickListener方法..
根据你的问题下面的评论,有很多可能性.我选择其中一个使用linear和relativeLayout.它可能是这样的:
<!-- named activity_main.xml --><relativeLayout ... > <linearLayout androID:ID="@+ID/contain" ... androID:layout_wIDth="250dip" androID:orIEntation="horizontal" androID:weightSum="4" > <!-- weightSum to 4 = whatever the screen, display my children vIEws in 4 sections --> <VIEw ... androID:layout_weight="1" androID:background="@drawable/green_dots" /> <!-- weight to 1 = this takes one section --> <VIEw ... androID:layout_weight="1" androID:background="@drawable/green_dots" /> <!-- weight to 1 = this takes one section --> <VIEw ... androID:layout_weight="1" androID:background="@drawable/green_dots" /> <VIEw ... androID:layout_weight="1" androID:background="@drawable/green_dots" /> </linearLayout> <relativeLayout androID:layout_below="@ID/contain" ... > ... Here display your buttons (or textvIEws) with custom drawable background for each one</relativeLayout>
在您的Activity类中,它实现了OnClickListener,如下所示:
public class MyActivity extends Activity implements OnClickListener { }
然后在你的方法里面这个Activity:
// init your buttons varbutton one, two, three, four, five ...;@OverrIDeprotected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // set the layout above setContentVIEw(R.layout.activity_main); // init your buttons one = (button) findVIEwByID(R.ID.button1); two = (button) findVIEwByID(R.ID.button2); three = (button) findVIEwByID(R.ID.button3); ... etc. // set them to your implementation one.setonClickListener(this); two.setonClickListener(this); three.setonClickListener(this); ... etc.}// call this function when one button is pressedpublic voID onClick(VIEw vIEw) { // retrIEves the ID of clicked button switch(vIEw.getID()) { case R.ID.button1: methodToSaveNumber(int); break; case R.ID.button2: methodToSaveNumber(int); break; case R.ID.button3: methodToSaveNumber(int); break; ... etc. }}
然后在你的methodToSaveNumber方法中:
// finally, your method to save the number of the passwordpublic voID methodToSaveNumber(int i) { ... do something. ... change the state of the buttons, the dots, whatever you want}
只是为了向您展示它是如何工作的,可绘制的green_dots可能是这样的:
<?xml version="1.0" enCoding="utf-8"?><shape xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:shape="rectangle" > <!-- radius --> <corners androID:radius="20dp" /> <!-- border --> <stroke androID:color="@androID:color/green" androID:wIDth="2dp" /> <!-- background (transparent) --> <solID androID:color="#00000000" /></shape>
你必须告诉你layouts及其如何运作,click event and its listener,drawables and their states(集中,按下,禁用……),最后,我希望你能得到你想要的.
快乐的编码!
总结以上是内存溢出为你收集整理的如何在Android中实现此功能全部内容,希望文章能够帮你解决如何在Android中实现此功能所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)