{"id":3736,"date":"2015-12-03T13:00:30","date_gmt":"2015-12-03T13:00:30","guid":{"rendered":"http:\/\/www.fandroid.info\/?page_id=3736"},"modified":"2015-12-03T13:00:30","modified_gmt":"2015-12-03T13:00:30","slug":"kak-sozdat-kreditnyj-kalkulyator-prilozhenie-dlya-android","status":"publish","type":"page","link":"https:\/\/www.fandroid.info\/kak-sozdat-kreditnyj-kalkulyator-prilozhenie-dlya-android\/","title":{"rendered":"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u0440\u0435\u0434\u0438\u0442\u043d\u044b\u0439 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 — \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f Android"},"content":{"rendered":"

\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0432 \u0443\u0440\u043e\u043a, \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435, \u043a\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c\u00a0\u043a\u0440\u0435\u0434\u0438\u0442\u043d\u044b\u0439 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0434\u043b\u044f android, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043f\u043b\u0430\u0442\u0435\u0436\u0430 \u043f\u043e \u043a\u0440\u0435\u0434\u0438\u0442\u0443.<\/p>\n

https:\/\/youtu.be\/qjJi-xWnPok<\/p>\n

\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434:<\/p>\n

<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<TableLayout xmlns:android=\"http:\/\/schemas.android.com\/apk\/res\/android\"\r\n    android:layout_width=\"match_parent\"\r\n    android:layout_height=\"match_parent\"\r\n    android:shrinkColumns=\"1\"\r\n    android:stretchColumns=\"1\">\r\n\r\n    <TableRow>\r\n\r\n        <TextView\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"right\"\r\n            android:text=\"@string\/loan_amount_prompt\" \/>\r\n\r\n        <EditText\r\n            android:id=\"@+id\/loan_amount\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:inputType=\"numberDecimal\">\r\n\r\n            <requestFocus><\/requestFocus>\r\n        <\/EditText>\r\n    <\/TableRow>\r\n\r\n    <TableRow>\r\n\r\n        <TextView\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"right\"\r\n            android:text=\"@string\/interest_rate_prompt\" \/>\r\n\r\n        <EditText\r\n            android:id=\"@+id\/interest_rate\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:inputType=\"numberDecimal\" \/>\r\n    <\/TableRow>\r\n\r\n    <TableRow>\r\n\r\n        <TextView\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"right\"\r\n            android:text=\"@string\/loan_period_prompt\" \/>\r\n\r\n        <EditText\r\n            android:id=\"@+id\/loan_period\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:inputType=\"number\" \/>\r\n    <\/TableRow>\r\n\r\n    <TableRow>\r\n\r\n        <Button\r\n            android:layout_width=\"match_parent\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:layout_span=\"2\"\r\n            android:onClick=\"showLoanPayments\"\r\n            android:text=\"@string\/loan_button_text\" \/>\r\n    <\/TableRow>\r\n\r\n    <TableRow android:layout_marginTop=\"20dp\">\r\n\r\n        <TextView\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"right\"\r\n            android:text=\"@string\/monthly_payment_prompt\" \/>\r\n\r\n        <TextView\r\n            android:id=\"@+id\/monthly_payment_result\"\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"left\"\r\n            android:textColor=\"#ff0000\" \/>\r\n    <\/TableRow>\r\n\r\n    <TableRow>\r\n\r\n        <TextView\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"right\"\r\n            android:text=\"@string\/total_payments_prompt\" \/>\r\n\r\n        <TextView\r\n            android:id=\"@+id\/total_payments_result\"\r\n            android:layout_width=\"wrap_content\"\r\n            android:layout_height=\"wrap_content\"\r\n            android:gravity=\"left\"\r\n            android:textColor=\"#ff0000\" \/>\r\n    <\/TableRow>\r\n<\/TableLayout>\r\n<\/pre>\n
import android.support.v7.app.AppCompatActivity;\r\nimport android.os.Bundle;\r\nimport android.view.Menu;\r\nimport android.view.MenuItem;\r\nimport android.view.View;\r\nimport android.widget.EditText;\r\nimport android.widget.TextView;\r\n\r\nimport java.text.DecimalFormat;\r\n\r\npublic class LoanCalculatorActivity extends AppCompatActivity {\r\n\r\n    private EditText mLoanAmount, mInterestRate, mLoanPeriod;\r\n    private TextView mMontlyPaymentResult, mTotalPaymentsResult;\r\n\r\n\r\n    @Override\r\n    protected void onCreate(Bundle savedInstanceState) {\r\n        super.onCreate(savedInstanceState);\r\n        setContentView(R.layout.activity_loan_calculator);\r\n\r\n        mLoanAmount = (EditText) findViewById(R.id.loan_amount);\r\n        mInterestRate = (EditText) findViewById(R.id.interest_rate);\r\n        mLoanPeriod = (EditText) findViewById(R.id.loan_period);\r\n        mMontlyPaymentResult = (TextView) findViewById(R.id.monthly_payment_result);\r\n        mTotalPaymentsResult = (TextView) findViewById(R.id.total_payments_result);\r\n\r\n    }\r\n\r\n    public void showLoanPayments(View clickedButton) {\r\n\r\n        double loanAmount = Integer.parseInt(mLoanAmount.getText().toString());\r\n        double interestRate = (Integer.parseInt(mInterestRate.getText().toString()));\r\n        double loanPeriod = Integer.parseInt(mLoanPeriod.getText().toString());\r\n        double r = interestRate \/ 1200;\r\n        double r1 = Math.pow(r + 1, loanPeriod);\r\n\r\n        double monthlyPayment = (double) ((r + (r \/ (r1 - 1))) * loanAmount);\r\n        double totalPayment = monthlyPayment * loanPeriod;\r\n\r\n        mMontlyPaymentResult.setText(new DecimalFormat(\"##.##\").format(monthlyPayment));\r\n        mTotalPaymentsResult.setText(new DecimalFormat(\"##.##\").format(totalPayment));\r\n    }\r\n\r\n\r\n    @Override\r\n    public boolean onCreateOptionsMenu(Menu menu) {\r\n        \/\/ Inflate the menu; this adds items to the action bar if it is present.\r\n        getMenuInflater().inflate(R.menu.menu_loan_calculator, menu);\r\n        return true;\r\n    }\r\n\r\n    @Override\r\n    public boolean onOptionsItemSelected(MenuItem item) {\r\n        \/\/ Handle action bar item clicks here. The action bar will\r\n        \/\/ automatically handle clicks on the Home\/Up button, so long\r\n        \/\/ as you specify a parent activity in AndroidManifest.xml.\r\n        int id = item.getItemId();\r\n\r\n        \/\/noinspection SimplifiableIfStatement\r\n        if (id == R.id.action_settings) {\r\n            return true;\r\n        }\r\n\r\n        return super.onOptionsItemSelected(item);\r\n    }\r\n}\r\n<\/pre>\n

\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"

\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0432 \u0443\u0440\u043e\u043a, \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435, \u043a\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c\u00a0\u043a\u0440\u0435\u0434\u0438\u0442\u043d\u044b\u0439 \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0434\u043b\u044f android, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043f\u043b\u0430\u0442\u0435\u0436\u0430 \u043f\u043e \u043a\u0440\u0435\u0434\u0438\u0442\u0443. https:\/\/youtu.be\/qjJi-xWnPok \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434: <?xml version=»1.0″ encoding=»utf-8″?> <TableLayout xmlns:android=»http:\/\/schemas.android.com\/apk\/res\/android» android:layout_width=»match_parent» android:layout_height=»match_parent» android:shrinkColumns=»1″ android:stretchColumns=»1″> <TableRow> <TextView android:layout_width=»wrap_content» android:layout_height=»wrap_content» android:gravity=»right» android:text=»@string\/loan_amount_prompt» \/> <EditText android:id=»@+id\/loan_amount» android:layout_height=»wrap_content» android:inputType=»numberDecimal»> <requestFocus><\/requestFocus> <\/EditText> <\/TableRow> <TableRow> <TextView android:layout_width=»wrap_content» android:layout_height=»wrap_content» android:gravity=»right» android:text=»@string\/interest_rate_prompt» \/> <EditText android:id=»@+id\/interest_rate» […]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":67,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/pages\/3736"}],"collection":[{"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/comments?post=3736"}],"version-history":[{"count":0,"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/pages\/3736\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fandroid.info\/wp-json\/wp\/v2\/media?parent=3736"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}