如何使这些按钮功能?

我有一个应用程序,我已经几乎完成了这是一个记分牌应用程序。 当用户在乐谱上做LongClick时,会出现一个对话框,其中显示带有OK和CANCEL按钮的EditText字段。 当用户单击EditText字段时,会出现一个键盘(仅限数字),用户在其中输入新乐谱,单击DONE,然后EditText字段在对话框中显示新值,当用户单击确定时,会保存输入的值到显示当前分数的TextView。

问题是我觉得这很麻烦。 这是我想要发生的事情:

  • 用户在分数上做LongClick
  • 键盘出现
  • 用户输入新分数
  • 用户单击确定
  • 小键盘消失,并将值保存到TextView中更新当前分数。
  • 为了做到这一点,我想到了两件事:

  • 我可以创建一个扩展视图的新类 - 我对于android来说太新了,无法真正理解这个选项。
  • 我可以使用像键盘一样设计的新XML文件替换对话框中的EditText。
  • 选项2:我想这可能是最简单的,所以我设计了XML布局并将其命名为keypad.xml。 现在,当用户执行LongClick时,keypad.xml文件在OK和CANCEL对话框中膨胀。 到现在为止还挺好。 但是,我不知道应该在哪里放置按钮操作的代码。

    起初我想,我可以设置一些onClick监听器,这是针对布局中的所有按钮的。 我认为所有按钮都将执行完全相同的功能。 基本上,从按钮(在这种情况下为0-9)获取文本,并将其附加到键盘正上方的TextView。 然后,当用户单击确定时,将keypad.xml中的T​​extView保存到当前得分textview。

    任何人都可以帮助我指出正确的方向来完成这个请吗?

    下面是keypad.xml的截图(数字上方有一个空的TextView):

    这里是XML代码:

    <?xml version="1.0" encoding="utf-8"?>
    <GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="fill"
    android:columnCount="3" >
    
    <TextView
        android:id="@+id/textView1"
        android:layout_columnSpan="3"
        android:layout_gravity="fill"
        android:gravity="right|center_vertical"
        android:textSize="24sp" />
    
    <Button android:text="1" />
    
    <Button android:text="2" />
    
    <Button android:text="3" />
    <Button android:text="4" />
    <Button android:text="5" />
    <Button android:text="6" />
    <Button android:text="7" />
    <Button android:text="8" />
    <Button android:text="9" />
    
    <Button
        android:layout_columnSpan="3"
        android:layout_gravity="fill"
        android:gravity="center"
        android:text="0" />
    


    这个问题似乎没有提示回应。 如果有人正在寻找答案,我已经提出了另一种解决方案,它不完全相同,但都能够起作用。

    请看这个问题。

    链接地址: http://www.djcxy.com/p/93025.html

    上一篇: How to make these buttons functional?

    下一篇: Android multi line EditText