Eclipse的Andr​​oid的引导具cAMP如何修改轮渡应用程序? [英] Eclipse Android Boot Camp- How to modify the Ferry app?

查看:124
本文介绍了Eclipse的Andr​​oid的引导具cAMP如何修改轮渡应用程序?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

导师已经要求我们创建一个简单的应用程序,允许用户输入的门票数量和点击为$ 18的两个位置以固定价格计算的成本。我们一直要求外包和研究,以完成该应用程序修改;使门票(1)普玛丽花费$ 20门票(2)星岛花费$ 30我的code是以下;

 公共类MainActivity扩展活动
    {
        双costPerTicket = 18.00;
        INT numberOfTickets;
        双totalCost;
        字符串groupChoice;
        @覆盖
        保护无效的onCreate(包savedInstanceState){
            super.onCreate(savedInstanceState);
            的setContentView(R.layout.activity_main);
            最后的EditText门票=(EditText上)findViewById(R.id.txtTickets);
            最后的微调组=(微调)findViewById(R.id.txtGroup);
            按键成本=(按钮)findViewById(R.id.btnCost);
            cost.setOnClickListener(新OnClickListener()
            {
                最终的TextView结果=((TextView中)findViewById(R.id.txtResult));
                @覆盖
                公共无效的onClick(视图v)
                {
                    // TODO自动生成方法存根
                    numberOfTickets =的Integer.parseInt(tickets.getText()的toString());
                    totalCost = costPerTicket * numberOfTickets;
                    DecimalFormat的货币=新的DecimalFormat($ ###,###。##。);
                    。groupChoice = group.getSelectedItem()的toString();
                    result.setText(总成本+ groupChoice +就是+ currency.format(totalCost));
                }
            });
        }
 

解决方案

首先声明一个微调在布局......一旦你声明你走你的strings.xml文件中的微调至极正在值的文件夹......就在那里您添加阵列像这样...

 <字符串数组名=LocationArray>
    <项目>海角玛丽< /项目>
    <项目>星岛< /项目>
< /字符串数组>
 

然后你回到你的活动......

我们需要创建一个微调的一个实例,并设置一个适配器连接到LocationArray这样我们就可以显示这些值...的code是这样的:

 微调mySpinner =(微调)findViewById(R.id.YOUR_SPINNER_ID);
mySpinner.setAdapter(适配器);
 

和适配器code是这样的...

  ArrayAdapter< CharSequence的>适配器= ArrayAdapter.createFromResource(这一点,R.array.LocationArray,android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 

所以在你的code应该是这样的...

 公共类MainActivity扩展活动
{
    双costPerTicket = 18.00;
    INT numberOfTickets;
    双totalCost;
    字符串groupChoice;
    @覆盖
    保护无效的onCreate(包savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.activity_main);
        最后的EditText门票=(EditText上)findViewById(R.id.txtTickets);
        最后的微调组=(微调)findViewById(R.id.txtGroup);
        按键成本=(按钮)findViewById(R.id.btnCost);
        ArrayAdapter< CharSequence的>适配器= ArrayAdapter.createFromResource(这一点,R.array.LocationArray,android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        微调mySpinner =(微调)findViewById(R.id.YOUR_SPINNER_ID);
        mySpinner.setAdapter(适配器);
        cost.setOnClickListener(新OnClickListener()
        {
            最终的TextView结果=((TextView中)findViewById(R.id.txtResult));
            @覆盖
            公共无效的onClick(视图v)
            {
                。字符串SpinnerValue = mySpinner.getSelectedItem()的toString();
                如果(SpinnerValue.equals(海角玛丽)){
                // TODO自动生成方法存根
                   numberOfTickets =的Integer.parseInt(tickets.getText()的toString());
                   totalCost = 20 * numberOfTickets;
                   DecimalFormat的货币=新的DecimalFormat($ ###,###。##。);
                   。groupChoice = group.getSelectedItem()的toString();
                   result.setText(总成本+ groupChoice +就是+ currency.format(totalCost));
            }
             如果(SpinnerValue.equals(星岛)){
                // TODO自动生成方法存根
                   numberOfTickets =的Integer.parseInt(tickets.getText()的toString());
                   totalCost = 30 * numberOfTickets;
                   DecimalFormat的货币=新的DecimalFormat($ ###,###。##。);
                   。groupChoice = group.getSelectedItem()的toString();
                   result.setText(总成本+ groupChoice +就是+ currency.format(totalCost));
            }

        });
    }
 

The mentor has asked that we create a simple app that allows user to enter amount of tickets and click to compute cost at a set rate of $18 for the two locations. We have been asked to outsource and research to complete the app MODIFICATION; so that tickets to (1)Cape Marie cost $20 and tickets to (2)Star Island cost $30. My code is below;

 public class MainActivity extends Activity 
    {
        double costPerTicket=18.00;
        int numberOfTickets;
        double totalCost;
        String groupChoice;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            final EditText tickets=(EditText)findViewById(R.id.txtTickets);
            final Spinner group=(Spinner)findViewById(R.id.txtGroup);
            Button cost = (Button)findViewById(R.id.btnCost);
            cost.setOnClickListener(new OnClickListener()
            {
                final TextView result=((TextView)findViewById(R.id.txtResult));
                @Override
                public void onClick(View v)
                {
                    // TODO Auto-generated method stub
                    numberOfTickets=Integer.parseInt(tickets.getText().toString());
                    totalCost=costPerTicket * numberOfTickets;
                    DecimalFormat currency=new DecimalFormat("$###,###.##");
                    groupChoice=group.getSelectedItem().toString();
                    result.setText("Total cost for "+groupChoice +" is " +currency.format(totalCost));
                }
            });
        }

解决方案

First declare a spinner in your layout... once you declare the spinner you go to your Strings.xml file wich is under values folder... right there you add an array like this...

<string-array name="LocationArray">
    <item>Cape Marie</item>   
    <item>Star Island</item>
</string-array>

then you go back to your activity...

we need to create an instance of an spinner and set an adapter to the LocationArray so we can display the values... the code goes like this:

Spinner mySpinner = (Spinner)findViewById(R.id.YOUR_SPINNER_ID);
mySpinner.setAdapter(adapter);

and adapter code goes like this...

 ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.LocationArray, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

so in your code should go like this...

public class MainActivity extends Activity 
{
    double costPerTicket=18.00;
    int numberOfTickets;
    double totalCost;
    String groupChoice;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final EditText tickets=(EditText)findViewById(R.id.txtTickets);
        final Spinner group=(Spinner)findViewById(R.id.txtGroup);
        Button cost = (Button)findViewById(R.id.btnCost);
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,  R.array.LocationArray, android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        Spinner mySpinner = (Spinner)findViewById(R.id.YOUR_SPINNER_ID);
        mySpinner.setAdapter(adapter);
        cost.setOnClickListener(new OnClickListener()
        {
            final TextView result=((TextView)findViewById(R.id.txtResult));
            @Override
            public void onClick(View v)
            {
                String SpinnerValue = mySpinner.getSelectedItem().toString();
                if(SpinnerValue.equals("Cape Marie")){
                // TODO Auto-generated method stub
                   numberOfTickets=Integer.parseInt(tickets.getText().toString());
                   totalCost = 20 * numberOfTickets;
                   DecimalFormat currency=new DecimalFormat("$###,###.##");
                   groupChoice=group.getSelectedItem().toString();
                   result.setText("Total cost for "+groupChoice +" is " +currency.format(totalCost)); 
            }
             if(SpinnerValue.equals("Star Island")){
                // TODO Auto-generated method stub
                   numberOfTickets=Integer.parseInt(tickets.getText().toString());
                   totalCost = 30 * numberOfTickets;
                   DecimalFormat currency=new DecimalFormat("$###,###.##");
                   groupChoice=group.getSelectedItem().toString();
                   result.setText("Total cost for "+groupChoice +" is " +currency.format(totalCost)); 
            }

        });
    }

这篇关于Eclipse的Andr​​oid的引导具cAMP如何修改轮渡应用程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆