Học bài Spelling Checker trong Android

p_erudite

New Member
Cú pháp của nó được đưa ra dưới đây:

Mã:
public class HelloSpellCheckerActivity extends Activity implements SpellCheckerSessionListener {[/SIZE][/COLOR][/FONT]
[SIZE=4][FONT=Georgia][COLOR=rgb(20, 20, 20)]@Override
public void onGetSuggestions(final SuggestionsInfo[] arg0) {
// TODO Auto-generated method stub
}

@Override
public void onGetSentenceSuggestions(SentenceSuggestionsInfo[] arg0) {
// TODO Auto-generated method stub
}
}
Điều tiếp theo bạn cần làm là tạo ra một đối tượng của lớp SpellCheckerSession. Đối tượng này có thể được khởi tạo bằng cách gọi phương thức newSpellCheckerSession của lớp TextServicesManager khi lap trinh android . Lớp này xử lý tương tác giữa các ứng dụng và các dịch vụ văn bản. Bạn cần phải yêu cầu dịch vụ hệ thống để nhanh chóng nó. Cú pháp của nó được đưa ra dưới đây

Mã:
private SpellCheckerSession mScs;[/SIZE][/COLOR][/FONT]
[SIZE=4][FONT=Georgia][COLOR=rgb(20, 20, 20)]final TextServicesManager tsm = (TextServicesManager) getSystemService(
Context.TEXT_SERVICES_MANAGER_SERVICE);
mScs = tsm.newSpellCheckerSession(null, null, this, true);
Điều cuối cùng bạn cần làm là để gọi phương thức getSuggestions để nhận được đề nghị cho bất kỳ văn bản, bạn muốn. Những đề nghị sẽ được thông qua vào phương pháp onGetSuggestions từ nơi mà bạn có thể làm bất cứ điều gì bạn muốn.

mScs.getSuggestions(new TextInfo(editText1.getText().toString()), 3);
Phương pháp này có hai tham số. Tham số đầu tiên là các chuỗi trong các hình thức của văn bản Thông tin đối tượng, và tham số thứ hai là số cookie được sử dụng để phân biệt các đề xuất.
>> Khóa hoc photoshop tai ha noi !
Ngoài các phương pháp, có những phương pháp khác được cung cấp bởi lớp SpellCheckerSession cho các đề xuất xử lý tốt hơn. Những phương pháp này được liệt kê dưới đây:

STTPhương pháp và mô tả
1cancel()
Hủy bỏ cấp phát và chạy các nhiệm vụ kiểm tra chính tả
2close ()
Kết thúc phiên giao dịch này và cho phép TextServicesManagerService để ngắt kết nối kiểm tra chính tả ràng buộc
3getSentenceSuggestions (TextInfo [] textInfos, int suggestionsLimit)
Nhận được gợi ý từ câu định
4getSpellChecker ()
Lấy thông tin dịch vụ kiểm tra chính tả phiên kiểm tra chính tả này có.
5isSessionDisconnected ()
Đúng nếu kết nối với dịch vụ văn bản của phiên họp này là bị ngắt kết nối và không còn sống.


Ví dụ

Dưới đây là một ví dụ minh hoạ việc sử dụng Spell Checker. Nó tạo ra một ứng dụng kiểm tra chính tả cơ bản cho phép bạn viết văn bản và nhận được gợi ý.

Để thử nghiệm với ví dụ này, bạn có thể chạy trên một thiết bị thực tế hoặc trong một mô phỏng.

Các bước Mô tả
1Bạn sẽ sử dụng Android studio để tạo ra một ứng dụng Android dưới một gói com.example.sairamkrishna.myapplication. Trong khi tạo dự án này, chắc chắn bạn Target SDK và biên dịch với các phiên bản mới nhất của Android SDK sử dụng các cấp cao hơn của các API.
2Sửa file src/ MainActivity.java để thêm mã cần thiết.
3Sửa đổi res / layout / main để thêm các thành phần XML tương ứng
4Chạy ứng dụng và chọn một thiết bị Android chạy và cài đặt các ứng dụng trên nó và xác minh các kết quả
Sau đây là nội dung của các sửa đổi tập tin chính hoạt động src / MainActivity.java.
Mã:
[/SIZE][/COLOR][/FONT]
[SIZE=4][FONT=Georgia][COLOR=rgb(20, 20, 20)]package com.example.sairamkrishna.myapplication;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;

import android.os.Bundle;
import android.os.Handler;

import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.textservice.TextInfo;
import android.view.textservice.TextServicesManager;

import android.widget.Button;
import android.widget.EditText;

import android.view.textservice.SentenceSuggestionsInfo;
import android.view.textservice.SpellCheckerSession;
import android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener;
import android.view.textservice.SuggestionsInfo;

import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity implements SpellCheckerSessionListener {
Button b1;
TextView tv1;
EditText ed1;
private SpellCheckerSession mScs;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

b1=(Button)findViewById(R.id.button);
tv1=(TextView)findViewById(R.id.textView3);

ed1=(EditText)findViewById(R.id.editText);
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), ed1.getText().toString(),Toast.LENGTH_SHORT).show();
mScs.getSuggestions(new TextInfo(ed1.getText().toString()), 3);
}
});
}

public void onResume() {
super.onResume();
final TextServicesManager tsm = (TextServicesManager) getSystemService(Context.TEXT_SERVICES_MANAGER_SERVICE);
mScs = tsm.newSpellCheckerSession(null, null, this, true);
}

public void onPause() {
super.onPause();
if (mScs != null) {
mScs.close();
}
}

public void onGetSuggestions(final SuggestionsInfo[] arg0) {
final StringBuilder sb = new StringBuilder();

for (int i = 0; i < arg0.length; ++i) {
// Returned suggestions are contained in SuggestionsInfo
final int len = arg0[i].getSuggestionsCount();
sb.append('\n');

for (int j = 0; j < len; ++j) {
sb.append("," + arg0[i].getSuggestionAt(j));
}

sb.append(" (" + len + ")");
}
runOnUiThread(new Runnable() {
public void run() {
tv1.append(sb.toString());
}
});
}

@Override
public void onGetSentenceSuggestions(SentenceSuggestionsInfo[] arg0) {
// TODO Auto-generated method stub
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.

int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
Nội dung xml res/layout/main.xml.
Mã:
[/SIZE][/COLOR][/FONT]
[SIZE=4][FONT=Georgia][COLOR=rgb(20, 20, 20)]<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

<TextView android:text="Spell checker " android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textview"
android:textSize="35dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tutorials point"
android:id="@+id/textView"
android:layout_below="@+id/textview"
android:layout_centerHorizontal="true"
android:textColor="#ff7aff24"
android:textSize="35dp" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Suggestions"
android:id="@+id/button"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />

<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/editText"
android:hint="Enter Text"
android:layout_above="@+id/button"
android:layout_marginBottom="56dp"
android:focusable="true"
android:textColorHighlight="#ff7eff15"
android:textColorHint="#ffff25e6"
android:layout_alignRight="@+id/textview"
android:layout_alignEnd="@+id/textview"
android:layout_alignLeft="@+id/textview"
android:layout_alignStart="@+id/textview" />

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:src="@drawable/abc"
android:layout_below="@+id/textView"
android:layout_centerHorizontal="true" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Suggestions"
android:id="@+id/textView3"
android:textSize="25sp"
android:layout_below="@+id/imageView" />

</RelativeLayout>
>> Khóa học lập trình php cơ bản tại hà nội !
Nội dung file res/values/string.xml.
Mã:
[/SIZE][/COLOR][/FONT]
[SIZE=4][FONT=Georgia][COLOR=rgb(20, 20, 20)]<resources>
<string name="app_name">My Application</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
</resources>
Nội dung file AndroidManifest.xml.
Mã:
[/SIZE][/COLOR][/FONT]
[SIZE=4][FONT=Georgia][COLOR=rgb(20, 20, 20)]<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.sairamkrishna.myapplication" >

<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >

<activity
android:name=".MainActivity"
android:label="@string/app_name" >

<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

</activity>

</application>
</manifest>
Kết quả:



Bây giờ những gì bạn cần làm là nhập vào bất kỳ văn bản trong lĩnh vực này. Ví dụ, tôi đã nhập một số văn bản. Nhấn vào nút gợi ý. Thông báo sau sẽ xuất hiện trong bạn AVD cùng với các đề xuất;



Bây giờ thay đổi văn bản và bấm nút một lần nữa, như tôi đã làm. Và đây là những gì xuất phát trên màn hình.





Trung tâm đào tạo học lap trinh android cơ bản nâng cao tại VietPro!
 
Загрузка...

Members online

No members online now.

Forum statistics

Threads
261,412
Bài viết
336,822
Thành viên
39,962
Thành viên mới nhất
gổ Hà Nguyễn
Chuyển nhà trọn gói | Xe tải chở hàng giá rẻ | thi công bảng hiệu hộp đèn quảng cáo | Chuyển nhà trọn gói Bình Dương | Thi công bảng hiệu hộp đèn | thi công nhôm kính bình dương | thi công quán cafe trọn gói | chuyển nhà trọn gói Bình Dương | Tỏi Lý Sơn
Top