Java getApplicationContext()上出现错误
我在getApplicationContext上的Public View onCreateView上有一个错误,它在我的HomeFragment上似乎不起作用,但当我在MainActivity上尝试此操作时,它起作用了。有人遇到过这种情况吗 提前谢谢Java getApplicationContext()上出现错误,java,android,android-fragments,Java,Android,Android Fragments,我在getApplicationContext上的Public View onCreateView上有一个错误,它在我的HomeFragment上似乎不起作用,但当我在MainActivity上尝试此操作时,它起作用了。有人遇到过这种情况吗 提前谢谢 这是我的密码: package com.thesis.artificialintelligence; import android.app.Activity; import android.os.Bundle; import a
这是我的密码:
package com.thesis.artificialintelligence;
import android.app.Activity;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.util.Locale;
public class HomeFragment extends Fragment {
private TextView resultTEXT;
private TextView resultTEXT2;
TextToSpeech t1;
private String package_calculator = "com.android.calculator2";
private String class_calculator ="com.android.calculator2.Calculator";
private String package_camera = "com.android.camera";
private String class_camera ="com.android.camera.Camera";
private String package_contacts = "com.android.contacts";
private String class_contacts = "com.android.contacts.Contacts";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_home, container, false);
// Inflate the layout for this fragment
rootView.findViewById(R.id.TVresult);
rootView.findViewById(R.id.TVresult2);
t1 = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() // There`s an Error here at getApplicationContext()
{
@Override
public void onInit(int status)
{
if(status != TextToSpeech.ERROR)
{
t1.setLanguage(Locale.UK);
}
}
});
return rootView;
}
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}
@Override
public void onDetach()
{
super.onDetach();
}
}
片段没有
getApplicationContext()
方法
TextToSpeech
只需要一个上下文,这样您就可以将其替换为getActivity()
如果您确实希望应用程序上下文执行
getActivity().getApplicationContext()
如果您使用的是片段,请将getApplicationContext()
替换为getActivity()
和getContext()
亲爱的,您可以使用
getActivity().getApplicationContext();